home *** CD-ROM | disk | FTP | other *** search
/ Aminet 37 / Aminet 37 (2000)(Schatztruhe)[!][Jun 2000].iso / Aminet / dev / lang / sofa.lha / sofa / smalleiffel / bin_c / compile_to_c1.c < prev    next >
C/C++ Source or Header  |  2000-03-25  |  106KB  |  5,485 lines

  1. /*
  2. -- ANSI C code generated by :
  3. -- SmallEiffel The GNU Eiffel Compiler -- Release (- 0.76Beta#1)--
  4. -- Copyright (C), 1994-98 - LORIA - UHP - CRIN - INRIA - FRANCE --
  5. -- Dominique COLNET and Suzanne COLLIN -    colnet@loria.fr     --
  6. --                  http://SmallEiffel.loria.fr/                --
  7. */
  8. #include "compile_to_c.h"
  9.  
  10.  
  11. int se_cmpT197(T197 o1,T197 o2){
  12. return memcmp(&o1,&o2,sizeof(o1));}
  13.  
  14.  
  15. int se_cmpT68(T68 o1,T68 o2){
  16. return memcmp(&o1,&o2,sizeof(o1));}
  17.  
  18.  
  19. int se_cmpT107(T107 o1,T107 o2){
  20. return memcmp(&o1,&o2,sizeof(o1));}
  21. T134 M134={134,NULL,NULL,NULL};
  22. T146 M146={146,{NULL,0},NULL};
  23. T279 M279={NULL,0,0,0};
  24. T217 M217={217,NULL,NULL};
  25. T379 M379={379,NULL,0,0,0};
  26. T318 M318={NULL,0,0,0};
  27. T309 M309={NULL,0,0,0};
  28. T176 M176={176,NULL,0,0,0};
  29. T88 M88={NULL,0,0,0};
  30. T133 M133={133,{NULL,0},NULL,NULL};
  31. T272 M272={272,NULL};
  32. T187 M187={187,NULL,NULL,NULL};
  33. T120 M120={120,NULL,NULL,NULL,NULL,0};
  34. T36 M36=NULL;
  35. T96 M96={NULL,NULL,NULL};
  36. T118 M118={118,NULL,NULL,NULL,NULL,0};
  37. T76 M76={NULL,0};
  38. T394 M394={394,NULL,NULL};
  39. T148 M148={148,{NULL,0},NULL};
  40. T314 M314={314,NULL};
  41. T306 M306={306,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0};
  42. T197 M197={NULL,NULL,NULL,NULL,NULL,NULL,NULL};
  43. T94 M94={{NULL,0},NULL};
  44. T95 M95={NULL};
  45. T66 M66={0,0,0};
  46. T81 M81={{NULL,0},NULL};
  47. T211 M211={211,NULL,NULL,NULL,NULL,NULL,NULL};
  48. T198 M198={198,NULL,NULL,NULL,NULL,NULL,NULL};
  49. T203 M203={0};
  50. T256 M256={256,{NULL,0},NULL};
  51. T266 M266={266,NULL};
  52. T137 M137={137,NULL,{NULL,0},NULL,NULL};
  53. T393 M393={393,NULL,NULL,NULL};
  54. T193 M193={193,NULL,NULL,NULL,NULL,0};
  55. T192 M192={192,NULL,NULL,NULL,NULL,0};
  56. T48 M48={NULL,NULL};
  57. T376 M376={NULL};
  58. T260 M260={260,NULL,NULL,NULL,NULL};
  59. T293 M293={293,NULL};
  60. T164 M164={164,{NULL,0},NULL};
  61. T366 M366=NULL;
  62. T362 M362={NULL,NULL,0,NULL,NULL,0,0,0,0,0};
  63. T271 M271={271,NULL};
  64. T349 M349={349,NULL,0,0};
  65. T216 M216={NULL,0,0};
  66. T206 M206={206,NULL,NULL,NULL,NULL,NULL,NULL,NULL};
  67. T230 M230={230,{NULL,0},NULL};
  68. T125 M125={125,NULL,NULL,NULL,NULL,0};
  69. T35 M35={0};
  70. T142 M142={142,NULL,NULL,NULL,NULL};
  71. T140 M140={140,NULL,NULL,NULL};
  72. T215 M215={NULL,NULL,NULL,NULL};
  73. T298 M298={298,NULL};
  74. T388 M388={388,NULL,NULL,NULL,0,0,NULL,NULL,NULL};
  75. T47 M47={0,0,NULL,0,0,0,0,NULL,NULL,NULL};
  76. T280 M280={280,NULL,0,NULL};
  77. T317 M317={NULL,NULL};
  78. T105 M105={NULL,{NULL,0}};
  79. T214 M214={{NULL,0},NULL,NULL,NULL,NULL,0};
  80. T345 M345={345,NULL,NULL,NULL,0,0,NULL,NULL};
  81. T27 M27={NULL,0,0};
  82. T353 M353={NULL,NULL,0,NULL,NULL,0,0,0,0,0};
  83. T138 M138={138,{NULL,0},NULL,NULL};
  84. T155 M155={155,NULL,NULL,NULL,NULL};
  85. T107 M107={{NULL,0},NULL};
  86. T316 M316={316,NULL};
  87. T368 M368={368,NULL,NULL,NULL,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0};
  88. T87 M87={NULL,NULL};
  89. T396 M396={396,NULL,NULL,NULL,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,0,0};
  90. T346 M346={346,NULL,0,0,0};
  91. T168 M168={168,{NULL,0},NULL,NULL,NULL,NULL};
  92. T99 M99={{NULL,0},NULL};
  93. T11 M11={NULL};
  94. T304 M304={304,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL};
  95. T185 M185={185,NULL,NULL,NULL};
  96. T85 M85={NULL};
  97. T297 M297={297,NULL};
  98. T57 M57={NULL,{NULL,0},NULL,NULL};
  99. T397 M397={397,NULL,NULL,NULL,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL};
  100. T39 M39={0};
  101. T130 M130={130,NULL,NULL,NULL};
  102. T68 M68={NULL,0};
  103. T262 M262={262,NULL,NULL,NULL,NULL};
  104. T145 M145={145,{NULL,0},NULL};
  105. T321 M321={NULL,NULL};
  106. T395 M395={395,NULL,NULL,NULL,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL};
  107. T209 M209={209,NULL,NULL,NULL,NULL,NULL,NULL};
  108. T166 M166={166,{NULL,0},NULL,NULL,NULL,NULL};
  109. T319 M319={{NULL,0},NULL};
  110. T234 M234={NULL,0,0,0};
  111. T227 M227={NULL,0,0,0};
  112. T59 M59={NULL,0,0,0};
  113. T44 M44={44,NULL,0,0,0};
  114. T342 M342={NULL,NULL,0,NULL,NULL,0,0,0,0,0};
  115. T337 M337={337,NULL,NULL,NULL,0,0,NULL,NULL,NULL,NULL};
  116. T273 M273={273,NULL,NULL,NULL,NULL};
  117. T370 M370={370,NULL,0,0};
  118. T195 M195={NULL,0,0};
  119. T141 M141={141,NULL,0,0};
  120. T64 M64={NULL,0,0};
  121. T343 M343={NULL,0,0};
  122. T254 M254={254,{NULL,0},NULL,NULL,NULL};
  123. T358 M358={NULL,0,0};
  124. T331 M331={NULL,0,0};
  125. T186 M186={186,NULL,NULL,NULL,NULL,0};
  126. T348 M348={NULL,NULL,0,NULL,NULL,0,0,0,0,0};
  127. T333 M333={333,NULL,NULL,NULL,0,0,NULL,0,NULL,NULL,NULL,NULL};
  128. T380 M380={0};
  129. T78 M78={{NULL,0},NULL,NULL,NULL};
  130. T181 M181={181,{NULL,0},NULL,NULL,0};
  131. T108 M108={108,NULL,0,0,0};
  132. T341 M341={NULL,NULL,NULL};
  133. T386 M386={386,NULL,NULL,NULL,0,0,NULL,NULL,NULL,NULL,NULL};
  134. T224 M224={224,NULL,NULL};
  135. T325 M325={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,NULL,NULL,NULL,NULL,0,0,0,0,NULL,0};
  136. T139 M139={139,NULL,NULL,NULL};
  137. T135 M135={135,NULL,NULL,NULL};
  138. T127 M127={127,NULL,NULL,NULL,NULL,0};
  139. T122 M122={122,NULL,NULL,NULL,NULL,0};
  140. T189 M189={189,NULL,NULL,NULL};
  141. T384 M384={384,NULL,NULL,0,NULL,NULL,0,0,0,0};
  142. T63 M63={NULL,NULL,0,NULL,NULL,0,0,0,0,0};
  143. T390 M390={390,{NULL,0},NULL,NULL};
  144. T160 M160={160,{NULL,0},0,0};
  145. T179 M179={179,{NULL,0},0,NULL};
  146. T303 M303={303,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0};
  147. T392 M392={392,NULL,NULL,NULL,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL};
  148. T335 M335={335,NULL,0,0};
  149. T201 M201={201,NULL,0,0};
  150. T259 M259={259,NULL};
  151. T275 M275={275,{NULL,0},NULL,NULL};
  152. T165 M165={165,{NULL,0},0};
  153. T117 M117={117,NULL,NULL,NULL,NULL,0};
  154. T381 M381={381,NULL,NULL,NULL};
  155. T161 M161={161,{NULL,0},NULL,NULL,NULL,NULL,NULL};
  156. T184 M184={184,{NULL,0},NULL};
  157. T111 M111={111,NULL,NULL,NULL,NULL,0};
  158. T286 M286={{NULL,0},NULL,NULL,NULL,NULL,0};
  159. T277 M277={277,{NULL,0},NULL,NULL,NULL};
  160. T245 M245={245,NULL,NULL,NULL};
  161. T398 M398={398,NULL,NULL,NULL,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL};
  162. T169 M169={169,NULL,NULL};
  163. T301 M301={301,NULL,NULL,NULL};
  164. T258 M258={NULL,0,0,0};
  165. T49 M49={NULL,0,0,0,0,0};
  166. T367 M367={367,NULL,NULL,0,NULL,NULL,0,0,0,0,0};
  167. T268 M268={268,NULL};
  168. T244 M244={244,NULL,NULL,NULL,NULL};
  169. T21 M21=NULL;
  170. T91 M91={NULL,NULL,0,NULL,NULL,0,0,0,0};
  171. T55 M55={NULL,NULL,0,NULL,NULL,0,0,0,0,0};
  172. T400 M400={NULL};
  173. T207 M207={207,NULL,0,0};
  174. T210 M210={210,NULL,NULL,NULL,NULL,NULL,NULL};
  175. T354 M354={NULL,0,0};
  176. T265 M265={265,NULL};
  177. T283 M283={283,NULL,NULL,NULL};
  178. T100 M100={NULL,NULL,NULL,NULL};
  179. T361 M361=NULL;
  180. T360 M360={NULL,0,0};
  181. T31 M31={31,NULL,0,0};
  182. T124 M124={124,NULL,NULL,NULL,NULL,0};
  183. T242 M242={{NULL,0},NULL,NULL,NULL,NULL};
  184. T270 M270={270,NULL};
  185. T174 M174={174,{NULL,0},NULL,NULL,0,0};
  186. T300 M300={300,NULL};
  187. T171 M171={171,{NULL,0},0,NULL};
  188. T369 M369=NULL;
  189. T263 M263={263,NULL};
  190. T92 M92={92,NULL,0,0};
  191. T56 M56={NULL,0,0};
  192. T126 M126={126,NULL,NULL,NULL,NULL,0};
  193. T363 M363=NULL;
  194. T323 M323={NULL,0,0,0};
  195. T257 M257={257,{NULL,0},NULL,NULL,NULL};
  196. T356 M356={NULL,0,0};
  197. T382 M382={382,NULL};
  198. T292 M292={292,NULL};
  199. T287 M287={287,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL};
  200. T77 M77={NULL};
  201. T46 M46=NULL;
  202. T109 M109={109,{NULL,0},NULL,NULL,NULL};
  203. T153 M153={153,NULL,NULL,NULL};
  204. T239 M239={239,NULL,NULL,0};
  205. T229 M229={229,NULL,NULL};
  206. T154 M154={154,NULL,NULL,NULL,NULL};
  207. T285 M285={285,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL};
  208. T246 M246={246,{NULL,0},NULL,NULL};
  209. T231 M231={231,{NULL,0},NULL,NULL,{NULL,0},NULL,NULL};
  210. T50 M50={NULL,0,0,NULL,NULL,0,NULL,0,NULL,NULL,0,0};
  211. T233 M233={NULL,NULL};
  212. T220 M220={220,NULL,0,0,0};
  213. T79 M79={NULL,0,0,0};
  214. T191 M191={191,NULL,NULL,NULL,NULL,0};
  215. T190 M190={190,NULL,NULL,NULL,NULL,0};
  216. T240 M240={240,NULL,NULL,NULL,0,0};
  217. T150 M150={150,NULL,NULL,NULL};
  218. T40 M40={0,NULL,NULL,0};
  219. T311 M311={311,NULL};
  220. T163 M163={163,{NULL,0},NULL,NULL,NULL};
  221. T221 M221={221,{NULL,0},NULL,NULL,NULL};
  222. T249 M249={249,{NULL,0},NULL,NULL,NULL};
  223. T61 M61={{NULL,0},NULL};
  224. T269 M269={269,NULL};
  225. T267 M267={267,NULL};
  226. T43 M43={NULL,NULL,NULL,NULL,0};
  227. T129 M129={129,{NULL,0},NULL,NULL};
  228. T119 M119={119,NULL,NULL,NULL,NULL,0};
  229. T274 M274={274,{NULL,0},NULL,NULL,NULL,NULL};
  230. T291 M291={291,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL};
  231. T121 M121={121,NULL,NULL,NULL,NULL,0};
  232. T351 M351=0;
  233. T251 M251={251,{NULL,0},NULL,NULL,NULL,NULL};
  234. T42 M42={NULL,NULL,0,NULL,NULL,0,0,0,0,0};
  235. T315 M315={315,NULL,NULL,NULL,NULL,NULL};
  236. T290 M290={290,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL};
  237. T391 M391={391,NULL,0,0};
  238. T385 M385={385,NULL,0,0};
  239. T372 M372={372,NULL,0,0};
  240. T364 M364={364,NULL,0,0};
  241. T147 M147={147,{NULL,0}};
  242. T253 M253={253,{NULL,0},NULL,NULL,NULL,NULL,NULL};
  243. T352 M352=0;
  244. T7 M7={NULL,0,0};
  245. T158 M158={158,{NULL,0}};
  246. T338 M338={NULL,NULL,NULL};
  247. T128 M128={128,NULL,NULL,NULL,NULL,0};
  248. T225 M225={NULL,NULL,NULL};
  249. T204 M204={204,NULL,NULL,NULL,NULL,NULL,NULL};
  250. T143 M143={143,NULL,NULL,NULL,NULL};
  251. T278 M278={NULL,NULL};
  252. T374 M374={NULL,0,0,0};
  253. T162 M162={NULL,0,0,0};
  254. T232 M232={{NULL,0},NULL,NULL,NULL,NULL,NULL};
  255. T243 M243={243,{NULL,0},NULL,NULL,NULL,NULL,NULL,NULL};
  256. T58 M58={NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL};
  257. T377 M377={NULL,0,0,0};
  258. T237 M237={NULL,0,0,0};
  259. T101 M101={NULL,0,0,0};
  260. T53 M53={NULL,0,0,0};
  261. T295 M295={295,NULL};
  262. T218 M218={{NULL,0},NULL,NULL,NULL,NULL};
  263. T67 M67={NULL,0,0};
  264. T344 M344={0,0,0};
  265. T23 M23={NULL,NULL,0,NULL,NULL,0,0,0,0};
  266. T205 M205={205,NULL,NULL,NULL,NULL,NULL,NULL};
  267. T389 M389={389,{NULL,0},NULL,NULL,NULL};
  268. T136 M136={136,NULL,NULL,NULL};
  269. T339 M339={339,NULL,0,0};
  270. T84 M84={NULL,0,0};
  271. T212 M212={212,NULL,NULL,NULL,NULL,NULL,NULL};
  272. T123 M123={123,NULL,NULL,NULL,NULL,0};
  273. T226 M226={NULL,NULL};
  274. T51 M51={0,NULL,NULL,NULL,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL};
  275. T307 M307={307,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL};
  276. T328 M328=0;
  277. T282 M282={282,NULL,NULL};
  278. T159 M159={159,{NULL,0}};
  279. T322 M322={NULL};
  280. T83 M83={NULL,NULL};
  281. T219 M219={219,{NULL,0},NULL,NULL,NULL};
  282. T182 M182={182,NULL,0,0,0};
  283. T97 M97={NULL,0,0,0};
  284. T178 M178={178,NULL,NULL};
  285. T194 M194={NULL,NULL};
  286. T102 M102={{NULL,0},NULL,NULL,NULL,NULL};
  287. T34 M34={0,0,0,NULL,0,0,NULL,0,0,NULL,NULL,0,{{NULL,0},NULL},0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,0,0,0,NULL,0,{NULL,NULL,NULL,NULL,NULL,NULL,NULL},0,0};
  288. T383 M383={0,NULL};
  289. T296 M296={296,NULL};
  290. /*
  291. -- This file is  free  software, which  comes  along  with  SmallEiffel. This
  292. -- software  is  distributed  in the hope that it will be useful, but WITHOUT 
  293. -- ANY  WARRANTY;  without  even  the  implied warranty of MERCHANTABILITY or
  294. -- FITNESS  FOR A PARTICULAR PURPOSE. You can modify it as you want, provided
  295. -- this header is kept unaltered, and a notification of the changes is added.
  296. -- You  are  allowed  to  redistribute  it and sell it, alone or as a part of 
  297. -- another product.
  298. --          Copyright (C) 1994-98 LORIA - UHP - CRIN - INRIA - FRANCE
  299. --            Dominique COLNET and Suzanne COLLIN - colnet@loria.fr 
  300. --                       http://SmallEiffel.loria.fr
  301. --
  302. */
  303.  
  304. /*
  305.   This file (SmallEiffel/sys/runtime/boost.c) is automatically included when
  306.   `run_control.boost' is true (ie. only for mode -boost).
  307. */
  308.  
  309. void se_print_run_time_stack (void) {
  310.   fprintf(SE_ERR,"Eiffel program crash at run time.\n");
  311.   fprintf(SE_ERR,"No trace when using option \"-boost\"\n");
  312. }
  313.  
  314. void sigrsp(int sig) {
  315.   printf("Received signal %d (man signal).\n",sig);
  316.   se_print_run_time_stack();
  317.   exit(1);
  318. }
  319.  
  320.  
  321. T6 r6_ix_not(T6 C){
  322. T6 R=0;
  323. /*[IF*/
  324. if(C){
  325. }
  326. else{
  327. R=1;
  328. }
  329. /*FI]*/
  330. return R;
  331. }
  332.  
  333.  
  334. T2 r2min(T2 C,T2 a1){
  335. T2 R=0;
  336. /*[IF*/
  337. if((C)<(a1)){
  338. R=C;
  339. }
  340. else{
  341. R=a1;
  342. }
  343. /*FI]*/
  344. return R;
  345. }
  346.  
  347.  
  348. T2 r2max(T2 C,T2 a1){
  349. T2 R=0;
  350. /*[IF*/
  351. if((a1)<(C)){
  352. R=C;
  353. }
  354. else{
  355. R=a1;
  356. }
  357. /*FI]*/
  358. return R;
  359. }
  360. T0*oBC2tmp_string=NULL;
  361.  
  362.  
  363. T2 r2to_octal(T2 C){
  364. T2 R=0;
  365. /*[IF*/
  366. if((C)==(0)){
  367. }
  368.  else if((C)<(0)){
  369. R=-(r2to_octal(-(C)));
  370. }
  371. else{
  372. /*[IRF3.3clear*/((((T7*)((T7*)(oBC2tmp_string))))->_count)=(0);
  373. /*]*/
  374. R=C;
  375. while (!((R)==(0)))
  376. {
  377. r7extend((T7*)(oBC2tmp_string),r2digit((R)%(8)));
  378. R=(R)/(8);
  379. }
  380. r7reverse((T7*)(oBC2tmp_string));
  381. R=r7to_integer((T7*)(oBC2tmp_string));
  382. }
  383. /*FI]*/
  384. return R;
  385. }
  386.  
  387.  
  388. T2 r2_px_94(T2 C,T2 a1){
  389. T2 R=0;
  390. /*[IF*/
  391. if((a1)==(0)){
  392. R=1;
  393. }
  394.  else if(((a1)%(2))==(0)){
  395. R=r2_px_94((C)*(C),(a1)/(2));
  396. }
  397. else{
  398. R=(C)*(r2_px_94(C,(a1)-(1)));
  399. }
  400. /*FI]*/
  401. return R;
  402. }
  403.  
  404.  
  405. T2 r2hash_code(T2 C){
  406. T2 R=0;
  407. /*[IF*/
  408. if((C)<(0)){
  409. R=-((C)+(1));
  410. }
  411. else{
  412. R=C;
  413. }
  414. /*FI]*/
  415. return R;
  416. }
  417.  
  418.  
  419. T3 r2digit(T2 C){
  420. T3 R=0;
  421. R=((T3)((C)+(T3code(((T3)'0')))));
  422. return R;
  423. }
  424.  
  425.  
  426. T3 r2hexadecimal_digit(T2 C){
  427. T3 R=0;
  428. /*[IF*/
  429. if((C)<=(9)){
  430. R=r2digit(C);
  431. }
  432. else{
  433. R=((T3)((T3code(((T3)'A')))+((C)-(10))));
  434. }
  435. /*FI]*/
  436. return R;
  437. }
  438.  
  439.  
  440. void r2append_in(T2 C,T0* a1){
  441. T2 _i=0;
  442. T2 _val=0;
  443. /*[IF*/
  444. if((C)==(0)){
  445. r7extend(((T7*)a1),((T3)'0'));
  446. }
  447. else{
  448. /*[IF*/
  449. if((C)>(0)){
  450. _i=((/*RF2*/(((T7*)a1))->_count/*4*/))+(1);
  451. _val=C;
  452. while (!((_val)==(0)))
  453. {
  454. r7extend(((T7*)a1),r2digit((_val)%(10)));
  455. _val=(_val)/(10);
  456. }
  457. }
  458. else{
  459. r7extend(((T7*)a1),((T3)'\55'));
  460. _i=((/*RF2*/(((T7*)a1))->_count/*4*/))+(1);
  461. _val=C;
  462. while (!((_val)==(0)))
  463. {
  464. r7extend(((T7*)a1),r2digit(-((_val)%(10))));
  465. _val=(_val)/(10);
  466. }
  467. }
  468. /*FI]*/
  469. _val=(/*RF2*/(((T7*)a1))->_count/*4*/);
  470. while (!((_i)>=(_val)))
  471. {
  472. r7swap(((T7*)a1),_i,_val);
  473. _val=(_val)-(1);
  474. _i=(_i)+(1);
  475. }
  476. }
  477. /*FI]*/
  478. }
  479.  
  480.  
  481. T0* r2to_string(T2 C){
  482. T0* R=NULL;
  483. {T7*n=((T7*)malloc(sizeof(*n))/*12*/);
  484. *n=M7;
  485. r7make(n,0);
  486. R=((T0*)n);
  487. }
  488. r2append_in(C,R);
  489. return R;
  490. }
  491.  
  492.  
  493. T3 r3to_lower(T3 C){
  494. T3 R=0;
  495. /*[IF*/
  496. if((T3code(C))<(65)){
  497. R=C;
  498. }
  499.  else if((T3code(C))>(90)){
  500. R=C;
  501. }
  502. else{
  503. R=((T3)((T3code(C))+(32)));
  504. }
  505. /*FI]*/
  506. return R;
  507. }
  508.  
  509.  
  510. T2 r3value(T3 C){
  511. T2 R=0;
  512. R=(T3code(C))-(48);
  513. return R;
  514. }
  515.  
  516.  
  517. T6 r3is_letter(T3 C){
  518. T6 R=0;
  519. /*[IF*/
  520. if((((unsigned)(C))>=((unsigned)(((T3)'a'))))){
  521. R=(((unsigned)(C))<=((unsigned)(((T3)'z'))));
  522. }
  523.  else if((((unsigned)(C))>=((unsigned)(((T3)'A'))))){
  524. R=(((unsigned)(C))<=((unsigned)(((T3)'Z'))));
  525. }
  526. /*FI]*/
  527. return R;
  528. }
  529.  
  530.  
  531. T6 r3_px_6061(T3 C,T3 a1){
  532. T6 R=0;
  533. R=(T3code(C))<=(T3code(a1));
  534. return R;
  535. }
  536.  
  537.  
  538. T6 r3_px_6261(T3 C,T3 a1){
  539. T6 R=0;
  540. R=(T3code(C))>=(T3code(a1));
  541. return R;
  542. }
  543.  
  544.  
  545. T6 r3is_separator(T3 C){
  546. T6 R=0;
  547. {int z1=C;
  548.  
  549. if((0==z1)||((9<=z1)&&(z1<=10))||(13==z1)||(32==z1)){
  550. R=1;
  551. }
  552. }
  553. return R;
  554. }
  555.  
  556.  
  557. T6 r3same_as(T3 C,T3 a1){
  558. T6 R=0;
  559. /*[IF*/
  560. if((C)==(a1)){
  561. R=1;
  562. }
  563. else{
  564. {int z1=T3code(C);
  565.  
  566. if(((65<=z1)&&(z1<=90))){
  567. R=(T3code(C))==((T3code(a1))-(32));
  568. }
  569.  else 
  570. if(((97<=z1)&&(z1<=122))){
  571. R=(T3code(C))==((T3code(a1))+(32));
  572. }
  573. }
  574. }
  575. /*FI]*/
  576. return R;
  577. }
  578.  
  579.  
  580. T2 r3decimal_value(T3 C){
  581. T2 R=0;
  582. R=(T3code(C))-(48);
  583. return R;
  584. }
  585.  
  586.  
  587. T6 r3is_digit(T3 C){
  588. T6 R=0;
  589. /*[IF*/
  590. if((((unsigned)(C))>=((unsigned)(((T3)'0'))))){
  591. R=(((unsigned)(C))<=((unsigned)(((T3)'9'))));
  592. }
  593. /*FI]*/
  594. return R;
  595. }
  596.  
  597.  
  598. T6 r3_px_60(T3 C,T3 a1){
  599. T6 R=0;
  600. R=(T3code(C))<(T3code(a1));
  601. return R;
  602. }
  603.  
  604.  
  605. T3 r3to_upper(T3 C){
  606. T3 R=0;
  607. /*[IF*/
  608. if((T3code(C))<(97)){
  609. R=C;
  610. }
  611.  else if((T3code(C))>(122)){
  612. R=C;
  613. }
  614. else{
  615. R=((T3)((T3code(C))-(32)));
  616. }
  617. /*FI]*/
  618. return R;
  619. }
  620.  
  621.  
  622. void r5append_in_format(T5 C,T0* a1,T2 a2){
  623. T2 _i=0;
  624. {/*sprintf_double*/
  625. char fmt[32];
  626. double d=C;
  627. fmt[0]='%';
  628. fmt[1]='.';
  629. sprintf(fmt+2,"%df\0",(a2));
  630. sprintf(((char*)(r5sprintf_double_buffer())),fmt,d);
  631. }
  632. _i=0;
  633. while (!(((r5sprintf_double_buffer())[_i])==(((T3)'\0'))))
  634. {
  635. r7extend(((T7*)a1),(r5sprintf_double_buffer())[_i]);
  636. _i=(_i)+(1);
  637. }
  638. }
  639. T9 oBC5sprintf_double_buffer=NULL;
  640. int fBC5sprintf_double_buffer=0;
  641.  
  642.  
  643. T9 r5sprintf_double_buffer(void){
  644. if(fBC5sprintf_double_buffer==0){fBC5sprintf_double_buffer=1;{
  645. oBC5sprintf_double_buffer=((T9)(calloc(1024,sizeof(T3))));
  646. }}
  647. return oBC5sprintf_double_buffer;
  648. }
  649.  
  650.  
  651. T70 r70_px_646060(T70 C,T2 a1){
  652. T70 R=0;
  653. R=(C<<a1);return R;
  654. }
  655.  
  656.  
  657. T70 r70_px_646262(T70 C,T2 a1){
  658. T70 R=0;
  659. R=(C>>a1);return R;
  660. }
  661.  
  662.  
  663. void r350clear(T350 C,T2 a1,T2 a2){
  664. T2 _i=0;
  665. T0* _v=NULL;
  666. _i=a1;
  667. while (!((_i)>(a2)))
  668. {
  669. (C)[_i]=(_v);
  670. _i=(_i)+(1);
  671. }
  672. }
  673.  
  674.  
  675. T350 r350realloc(T350 C,T2 a1,T2 a2){
  676. T350 R=NULL;
  677. R=((T350)(calloc(a2,sizeof(T0*))));
  678. r350copy_from(R,C,(a1)-(1));
  679. return R;
  680. }
  681.  
  682.  
  683. void r350move(T350 C,T2 a1,T2 a2,T2 a3){
  684. T2 _i=0;
  685. /*[IF*/
  686. if((a3)==(0)){
  687. }
  688.  else if((a3)<(0)){
  689. _i=a1;
  690. while (!((_i)>(a2)))
  691. {
  692. (C)[(_i)+(a3)]=((C)[_i]);
  693. _i=(_i)+(1);
  694. }
  695. }
  696. else{
  697. _i=a2;
  698. while (!((_i)<(a1)))
  699. {
  700. (C)[(_i)+(a3)]=((C)[_i]);
  701. _i=(_i)-(1);
  702. }
  703. }
  704. /*FI]*/
  705. }
  706.  
  707.  
  708. void r350copy_from(T350 C,T350 a1,T2 a2){
  709. T2 _i=0;
  710. _i=a2;
  711. while (!((_i)<(0)))
  712. {
  713. (C)[_i]=((a1)[_i]);
  714. _i=(_i)-(1);
  715. }
  716. }
  717.  
  718.  
  719. void r350set_all_with(T350 C,T0* a1,T2 a2){
  720. T2 _i=0;
  721. _i=a2;
  722. while (!((_i)<(0)))
  723. {
  724. (C)[_i]=(a1);
  725. _i=(_i)-(1);
  726. }
  727. }
  728.  
  729.  
  730. T2 r350fast_index_of(T350 C,T0* a1,T2 a2){
  731. T2 R=0;
  732. while (!(((R)>(a2))||((a1)==((void*)((C)[R])))))
  733. {
  734. R=(R)+(1);
  735. }
  736. return R;
  737. }
  738.  
  739.  
  740. T320 r320realloc(T320 C,T2 a1,T2 a2){
  741. T320 R=NULL;
  742. R=((T320)(calloc(a2,sizeof(T0*))));
  743. r320copy_from(R,C,(a1)-(1));
  744. return R;
  745. }
  746.  
  747.  
  748. void r320copy_from(T320 C,T320 a1,T2 a2){
  749. T2 _i=0;
  750. _i=a2;
  751. while (!((_i)<(0)))
  752. {
  753. (C)[_i]=((a1)[_i]);
  754. _i=(_i)-(1);
  755. }
  756. }
  757.  
  758.  
  759. T310 r310realloc(T310 C,T2 a1,T2 a2){
  760. T310 R=NULL;
  761. R=((T310)(calloc(a2,sizeof(T0*))));
  762. r310copy_from(R,C,(a1)-(1));
  763. return R;
  764. }
  765.  
  766.  
  767. void r310copy_from(T310 C,T310 a1,T2 a2){
  768. T2 _i=0;
  769. _i=a2;
  770. while (!((_i)<(0)))
  771. {
  772. (C)[_i]=((a1)[_i]);
  773. _i=(_i)-(1);
  774. }
  775. }
  776.  
  777.  
  778. T223 r223realloc(T223 C,T2 a1,T2 a2){
  779. T223 R=NULL;
  780. R=((T223)(calloc(a2,sizeof(T0*))));
  781. r223copy_from(R,C,(a1)-(1));
  782. return R;
  783. }
  784.  
  785.  
  786. void r223copy_from(T223 C,T223 a1,T2 a2){
  787. T2 _i=0;
  788. _i=a2;
  789. while (!((_i)<(0)))
  790. {
  791. (C)[_i]=((a1)[_i]);
  792. _i=(_i)-(1);
  793. }
  794. }
  795.  
  796.  
  797. void r223clear_all(T223 C,T2 a1){
  798. T2 _i=0;
  799. T0* _v=NULL;
  800. _i=a1;
  801. while (!((_i)<(0)))
  802. {
  803. (C)[_i]=(_v);
  804. _i=(_i)-(1);
  805. }
  806. }
  807.  
  808.  
  809. T177 r177realloc(T177 C,T2 a1,T2 a2){
  810. T177 R=NULL;
  811. R=((T177)(calloc(a2,sizeof(T0*))));
  812. r177copy_from(R,C,(a1)-(1));
  813. return R;
  814. }
  815.  
  816.  
  817. void r177copy_from(T177 C,T177 a1,T2 a2){
  818. T2 _i=0;
  819. _i=a2;
  820. while (!((_i)<(0)))
  821. {
  822. (C)[_i]=((a1)[_i]);
  823. _i=(_i)-(1);
  824. }
  825. }
  826.  
  827.  
  828. void r177set_all_with(T177 C,T0* a1,T2 a2){
  829. T2 _i=0;
  830. _i=a2;
  831. while (!((_i)<(0)))
  832. {
  833. (C)[_i]=(a1);
  834. _i=(_i)-(1);
  835. }
  836. }
  837.  
  838.  
  839. T89 r89realloc(T89 C,T2 a1,T2 a2){
  840. T89 R=NULL;
  841. R=((T89)(calloc(a2,sizeof(T0*))));
  842. r89copy_from(R,C,(a1)-(1));
  843. return R;
  844. }
  845.  
  846.  
  847. void r89copy_from(T89 C,T89 a1,T2 a2){
  848. T2 _i=0;
  849. _i=a2;
  850. while (!((_i)<(0)))
  851. {
  852. (C)[_i]=((a1)[_i]);
  853. _i=(_i)-(1);
  854. }
  855. }
  856.  
  857.  
  858. T261 r261realloc(T261 C,T2 a1,T2 a2){
  859. T261 R=NULL;
  860. R=((T261)(calloc(a2,sizeof(T0*))));
  861. r261copy_from(R,C,(a1)-(1));
  862. return R;
  863. }
  864.  
  865.  
  866. void r261copy_from(T261 C,T261 a1,T2 a2){
  867. T2 _i=0;
  868. _i=a2;
  869. while (!((_i)<(0)))
  870. {
  871. (C)[_i]=((a1)[_i]);
  872. _i=(_i)-(1);
  873. }
  874. }
  875.  
  876.  
  877. void r261set_all_with(T261 C,T0* a1,T2 a2){
  878. T2 _i=0;
  879. _i=a2;
  880. while (!((_i)<(0)))
  881. {
  882. (C)[_i]=(a1);
  883. _i=(_i)-(1);
  884. }
  885. }
  886.  
  887.  
  888. T355 r355realloc(T355 C,T2 a1,T2 a2){
  889. T355 R=NULL;
  890. R=((T355)(calloc(a2,sizeof(T0*))));
  891. r355copy_from(R,C,(a1)-(1));
  892. return R;
  893. }
  894.  
  895.  
  896. void r355copy_from(T355 C,T355 a1,T2 a2){
  897. T2 _i=0;
  898. _i=a2;
  899. while (!((_i)<(0)))
  900. {
  901. (C)[_i]=((a1)[_i]);
  902. _i=(_i)-(1);
  903. }
  904. }
  905.  
  906.  
  907. void r355set_all_with(T355 C,T0* a1,T2 a2){
  908. T2 _i=0;
  909. _i=a2;
  910. while (!((_i)<(0)))
  911. {
  912. (C)[_i]=(a1);
  913. _i=(_i)-(1);
  914. }
  915. }
  916.  
  917.  
  918. T371 r371realloc(T371 C,T2 a1,T2 a2){
  919. T371 R=NULL;
  920. R=((T371)(calloc(a2,sizeof(T0*))));
  921. r371copy_from(R,C,(a1)-(1));
  922. return R;
  923. }
  924.  
  925.  
  926. void r371copy_from(T371 C,T371 a1,T2 a2){
  927. T2 _i=0;
  928. _i=a2;
  929. while (!((_i)<(0)))
  930. {
  931. (C)[_i]=((a1)[_i]);
  932. _i=(_i)-(1);
  933. }
  934. }
  935.  
  936.  
  937. void r371set_all_with(T371 C,T0* a1,T2 a2){
  938. T2 _i=0;
  939. _i=a2;
  940. while (!((_i)<(0)))
  941. {
  942. (C)[_i]=(a1);
  943. _i=(_i)-(1);
  944. }
  945. }
  946.  
  947.  
  948. void r371clear_all(T371 C,T2 a1){
  949. T2 _i=0;
  950. T0* _v=NULL;
  951. _i=a1;
  952. while (!((_i)<(0)))
  953. {
  954. (C)[_i]=(_v);
  955. _i=(_i)-(1);
  956. }
  957. }
  958.  
  959.  
  960. T196 r196realloc(T196 C,T2 a1,T2 a2){
  961. T196 R=NULL;
  962. R=((T196)(calloc(a2,sizeof(T0*))));
  963. r196copy_from(R,C,(a1)-(1));
  964. return R;
  965. }
  966.  
  967.  
  968. void r196copy_from(T196 C,T196 a1,T2 a2){
  969. T2 _i=0;
  970. _i=a2;
  971. while (!((_i)<(0)))
  972. {
  973. (C)[_i]=((a1)[_i]);
  974. _i=(_i)-(1);
  975. }
  976. }
  977.  
  978.  
  979. T110 r110realloc(T110 C,T2 a1,T2 a2){
  980. T110 R=NULL;
  981. R=((T110)(calloc(a2,sizeof(T0*))));
  982. r110copy_from(R,C,(a1)-(1));
  983. return R;
  984. }
  985.  
  986.  
  987. void r110copy_from(T110 C,T110 a1,T2 a2){
  988. T2 _i=0;
  989. _i=a2;
  990. while (!((_i)<(0)))
  991. {
  992. (C)[_i]=((a1)[_i]);
  993. _i=(_i)-(1);
  994. }
  995. }
  996.  
  997.  
  998. void r110set_all_with(T110 C,T0* a1,T2 a2){
  999. T2 _i=0;
  1000. _i=a2;
  1001. while (!((_i)<(0)))
  1002. {
  1003. (C)[_i]=(a1);
  1004. _i=(_i)-(1);
  1005. }
  1006. }
  1007.  
  1008.  
  1009. void r110clear_all(T110 C,T2 a1){
  1010. T2 _i=0;
  1011. T0* _v=NULL;
  1012. _i=a1;
  1013. while (!((_i)<(0)))
  1014. {
  1015. (C)[_i]=(_v);
  1016. _i=(_i)-(1);
  1017. }
  1018. }
  1019.  
  1020.  
  1021. T65 r65realloc(T65 C,T2 a1,T2 a2){
  1022. T65 R=NULL;
  1023. R=((T65)(calloc(a2,sizeof(T0*))));
  1024. r65copy_from(R,C,(a1)-(1));
  1025. return R;
  1026. }
  1027.  
  1028.  
  1029. void r65copy_from(T65 C,T65 a1,T2 a2){
  1030. T2 _i=0;
  1031. _i=a2;
  1032. while (!((_i)<(0)))
  1033. {
  1034. (C)[_i]=((a1)[_i]);
  1035. _i=(_i)-(1);
  1036. }
  1037. }
  1038.  
  1039.  
  1040. void r65set_all_with(T65 C,T0* a1,T2 a2){
  1041. T2 _i=0;
  1042. _i=a2;
  1043. while (!((_i)<(0)))
  1044. {
  1045. (C)[_i]=(a1);
  1046. _i=(_i)-(1);
  1047. }
  1048. }
  1049.  
  1050.  
  1051. T2 r65fast_index_of(T65 C,T0* a1,T2 a2){
  1052. T2 R=0;
  1053. while (!(((R)>(a2))||((a1)==((void*)((C)[R])))))
  1054. {
  1055. R=(R)+(1);
  1056. }
  1057. return R;
  1058. }
  1059.  
  1060.  
  1061. T235 r235realloc(T235 C,T2 a1,T2 a2){
  1062. T235 R=NULL;
  1063. R=((T235)(calloc(a2,sizeof(T0*))));
  1064. r235copy_from(R,C,(a1)-(1));
  1065. return R;
  1066. }
  1067.  
  1068.  
  1069. void r235copy_from(T235 C,T235 a1,T2 a2){
  1070. T2 _i=0;
  1071. _i=a2;
  1072. while (!((_i)<(0)))
  1073. {
  1074. (C)[_i]=((a1)[_i]);
  1075. _i=(_i)-(1);
  1076. }
  1077. }
  1078.  
  1079.  
  1080. T228 r228realloc(T228 C,T2 a1,T2 a2){
  1081. T228 R=NULL;
  1082. R=((T228)(calloc(a2,sizeof(T0*))));
  1083. r228copy_from(R,C,(a1)-(1));
  1084. return R;
  1085. }
  1086.  
  1087.  
  1088. void r228copy_from(T228 C,T228 a1,T2 a2){
  1089. T2 _i=0;
  1090. _i=a2;
  1091. while (!((_i)<(0)))
  1092. {
  1093. (C)[_i]=((a1)[_i]);
  1094. _i=(_i)-(1);
  1095. }
  1096. }
  1097.  
  1098.  
  1099. T60 r60realloc(T60 C,T2 a1,T2 a2){
  1100. T60 R=NULL;
  1101. R=((T60)(calloc(a2,sizeof(T0*))));
  1102. r60copy_from(R,C,(a1)-(1));
  1103. return R;
  1104. }
  1105.  
  1106.  
  1107. void r60copy_from(T60 C,T60 a1,T2 a2){
  1108. T2 _i=0;
  1109. _i=a2;
  1110. while (!((_i)<(0)))
  1111. {
  1112. (C)[_i]=((a1)[_i]);
  1113. _i=(_i)-(1);
  1114. }
  1115. }
  1116.  
  1117.  
  1118. T32 r32realloc(T32 C,T2 a1,T2 a2){
  1119. T32 R=NULL;
  1120. R=((T32)(calloc(a2,sizeof(T0*))));
  1121. r32copy_from(R,C,(a1)-(1));
  1122. return R;
  1123. }
  1124.  
  1125.  
  1126. T6 r32equal_like(T0* a1,T0* a2){
  1127. T6 R=0;
  1128. /*[IF*/
  1129. /*AF*//*AF*/if((a1)==((void*)(a2))){
  1130. R=1;
  1131. }
  1132.  else if(((a1)==((void*)(NULL)))||((a2)==((void*)(NULL)))){
  1133. }
  1134. else{
  1135. R=r7is_equal(((T7*)a1),a2);
  1136. }
  1137. /*FI]*/
  1138. return R;
  1139. }
  1140.  
  1141.  
  1142. void r32copy_from(T32 C,T32 a1,T2 a2){
  1143. T2 _i=0;
  1144. _i=a2;
  1145. while (!((_i)<(0)))
  1146. {
  1147. (C)[_i]=((a1)[_i]);
  1148. _i=(_i)-(1);
  1149. }
  1150. }
  1151.  
  1152.  
  1153. void r32set_all_with(T32 C,T0* a1,T2 a2){
  1154. T2 _i=0;
  1155. _i=a2;
  1156. while (!((_i)<(0)))
  1157. {
  1158. (C)[_i]=(a1);
  1159. _i=(_i)-(1);
  1160. }
  1161. }
  1162.  
  1163.  
  1164. T2 r32fast_index_of(T32 C,T0* a1,T2 a2){
  1165. T2 R=0;
  1166. while (!(((R)>(a2))||((a1)==((void*)((C)[R])))))
  1167. {
  1168. R=(R)+(1);
  1169. }
  1170. return R;
  1171. }
  1172.  
  1173.  
  1174. T2 r32index_of(T32 C,T0* a1,T2 a2){
  1175. T2 R=0;
  1176. while (!(((R)>(a2))||(r32equal_like(a1,(C)[R]))))
  1177. {
  1178. R=(R)+(1);
  1179. }
  1180. return R;
  1181. }
  1182.  
  1183.  
  1184. T378 r378realloc(T378 C,T2 a1,T2 a2){
  1185. T378 R=NULL;
  1186. R=((T378)(calloc(a2,sizeof(T0*))));
  1187. r378copy_from(R,C,(a1)-(1));
  1188. return R;
  1189. }
  1190.  
  1191.  
  1192. void r378copy_from(T378 C,T378 a1,T2 a2){
  1193. T2 _i=0;
  1194. _i=a2;
  1195. while (!((_i)<(0)))
  1196. {
  1197. (C)[_i]=((a1)[_i]);
  1198. _i=(_i)-(1);
  1199. }
  1200. }
  1201.  
  1202.  
  1203. T238 r238realloc(T238 C,T2 a1,T2 a2){
  1204. T238 R=NULL;
  1205. R=((T238)(calloc(a2,sizeof(T0*))));
  1206. r238copy_from(R,C,(a1)-(1));
  1207. return R;
  1208. }
  1209.  
  1210.  
  1211. void r238copy_from(T238 C,T238 a1,T2 a2){
  1212. T2 _i=0;
  1213. _i=a2;
  1214. while (!((_i)<(0)))
  1215. {
  1216. (C)[_i]=((a1)[_i]);
  1217. _i=(_i)-(1);
  1218. }
  1219. }
  1220.  
  1221.  
  1222. T106 r106realloc(T106 C,T2 a1,T2 a2){
  1223. T106 R=NULL;
  1224. R=((T106)(calloc(a2,sizeof(T0*))));
  1225. r106copy_from(R,C,(a1)-(1));
  1226. return R;
  1227. }
  1228.  
  1229.  
  1230. void r106copy_from(T106 C,T106 a1,T2 a2){
  1231. T2 _i=0;
  1232. _i=a2;
  1233. while (!((_i)<(0)))
  1234. {
  1235. (C)[_i]=((a1)[_i]);
  1236. _i=(_i)-(1);
  1237. }
  1238. }
  1239.  
  1240.  
  1241. void r106set_all_with(T106 C,T0* a1,T2 a2){
  1242. T2 _i=0;
  1243. _i=a2;
  1244. while (!((_i)<(0)))
  1245. {
  1246. (C)[_i]=(a1);
  1247. _i=(_i)-(1);
  1248. }
  1249. }
  1250.  
  1251.  
  1252. T2 r106fast_index_of(T106 C,T0* a1,T2 a2){
  1253. T2 R=0;
  1254. while (!(((R)>(a2))||((a1)==((void*)((C)[R])))))
  1255. {
  1256. R=(R)+(1);
  1257. }
  1258. return R;
  1259. }
  1260.  
  1261.  
  1262. T93 r93realloc(T93 C,T2 a1,T2 a2){
  1263. T93 R=NULL;
  1264. R=((T93)(calloc(a2,sizeof(T0*))));
  1265. r93copy_from(R,C,(a1)-(1));
  1266. return R;
  1267. }
  1268.  
  1269.  
  1270. void r93copy_from(T93 C,T93 a1,T2 a2){
  1271. T2 _i=0;
  1272. _i=a2;
  1273. while (!((_i)<(0)))
  1274. {
  1275. (C)[_i]=((a1)[_i]);
  1276. _i=(_i)-(1);
  1277. }
  1278. }
  1279.  
  1280.  
  1281. void r93set_all_with(T93 C,T0* a1,T2 a2){
  1282. T2 _i=0;
  1283. _i=a2;
  1284. while (!((_i)<(0)))
  1285. {
  1286. (C)[_i]=(a1);
  1287. _i=(_i)-(1);
  1288. }
  1289. }
  1290.  
  1291.  
  1292. T2 r93fast_index_of(T93 C,T0* a1,T2 a2){
  1293. T2 R=0;
  1294. while (!(((R)>(a2))||((a1)==((void*)((C)[R])))))
  1295. {
  1296. R=(R)+(1);
  1297. }
  1298. return R;
  1299. }
  1300.  
  1301.  
  1302. void r93clear_all(T93 C,T2 a1){
  1303. T2 _i=0;
  1304. T0* _v=NULL;
  1305. _i=a1;
  1306. while (!((_i)<(0)))
  1307. {
  1308. (C)[_i]=(_v);
  1309. _i=(_i)-(1);
  1310. }
  1311. }
  1312.  
  1313.  
  1314. T54 r54realloc(T54 C,T2 a1,T2 a2){
  1315. T54 R=NULL;
  1316. R=((T54)(calloc(a2,sizeof(T0*))));
  1317. r54copy_from(R,C,(a1)-(1));
  1318. return R;
  1319. }
  1320.  
  1321.  
  1322. void r54copy_from(T54 C,T54 a1,T2 a2){
  1323. T2 _i=0;
  1324. _i=a2;
  1325. while (!((_i)<(0)))
  1326. {
  1327. (C)[_i]=((a1)[_i]);
  1328. _i=(_i)-(1);
  1329. }
  1330. }
  1331.  
  1332.  
  1333. void r54set_all_with(T54 C,T0* a1,T2 a2){
  1334. T2 _i=0;
  1335. _i=a2;
  1336. while (!((_i)<(0)))
  1337. {
  1338. (C)[_i]=(a1);
  1339. _i=(_i)-(1);
  1340. }
  1341. }
  1342.  
  1343.  
  1344. T2 r54fast_index_of(T54 C,T0* a1,T2 a2){
  1345. T2 R=0;
  1346. while (!(((R)>(a2))||((a1)==((void*)((C)[R])))))
  1347. {
  1348. R=(R)+(1);
  1349. }
  1350. return R;
  1351. }
  1352.  
  1353.  
  1354. void r9clear(T9 C,T2 a1,T2 a2){
  1355. T2 _i=0;
  1356. T3 _v=0;
  1357. _i=a1;
  1358. while (!((_i)>(a2)))
  1359. {
  1360. (C)[_i]=(_v);
  1361. _i=(_i)+(1);
  1362. }
  1363. }
  1364.  
  1365.  
  1366. T9 r9realloc(T9 C,T2 a1,T2 a2){
  1367. T9 R=NULL;
  1368. R=((T9)(calloc(a2,sizeof(T3))));
  1369. r9copy_from(R,C,(a1)-(1));
  1370. return R;
  1371. }
  1372.  
  1373.  
  1374. void r9move(T9 C,T2 a1,T2 a2,T2 a3){
  1375. T2 _i=0;
  1376. /*[IF*/
  1377. if((a3)==(0)){
  1378. }
  1379.  else if((a3)<(0)){
  1380. _i=a1;
  1381. while (!((_i)>(a2)))
  1382. {
  1383. (C)[(_i)+(a3)]=((C)[_i]);
  1384. _i=(_i)+(1);
  1385. }
  1386. }
  1387. else{
  1388. _i=a2;
  1389. while (!((_i)<(a1)))
  1390. {
  1391. (C)[(_i)+(a3)]=((C)[_i]);
  1392. _i=(_i)-(1);
  1393. }
  1394. }
  1395. /*FI]*/
  1396. }
  1397.  
  1398.  
  1399. T6 r9fast_memcmp(T9 C,T9 a1,T2 a2){
  1400. T6 R=0;
  1401. T2 _i=0;
  1402. _i=(a2)-(1);
  1403. while (!(((_i)<(0))||(((C)[_i])!=((a1)[_i]))))
  1404. {
  1405. _i=(_i)-(1);
  1406. }
  1407. R=(_i)<(0);
  1408. return R;
  1409. }
  1410.  
  1411.  
  1412. T2 r9fast_nb_occurrences(T9 C,T3 a1,T2 a2){
  1413. T2 R=0;
  1414. T2 _i=0;
  1415. _i=a2;
  1416. while (!((_i)<(0)))
  1417. {
  1418. /*[IF*/
  1419. if((a1)==((C)[_i])){
  1420. R=(R)+(1);
  1421. }
  1422. /*FI]*/
  1423. _i=(_i)-(1);
  1424. }
  1425. return R;
  1426. }
  1427.  
  1428.  
  1429. void r9copy_from(T9 C,T9 a1,T2 a2){
  1430. T2 _i=0;
  1431. _i=a2;
  1432. while (!((_i)<(0)))
  1433. {
  1434. (C)[_i]=((a1)[_i]);
  1435. _i=(_i)-(1);
  1436. }
  1437. }
  1438.  
  1439.  
  1440. T6 r9fast_has(T9 C,T3 a1,T2 a2){
  1441. T6 R=0;
  1442. T2 _i=0;
  1443. _i=a2;
  1444. while (!(((_i)<(0))||((a1)==((C)[_i]))))
  1445. {
  1446. _i=(_i)-(1);
  1447. }
  1448. R=(_i)>=(0);
  1449. return R;
  1450. }
  1451.  
  1452.  
  1453. void r9copy_at(T9 C,T2 a1,T9 a2,T2 a3){
  1454. T2 _i2=0;
  1455. T2 _i1=0;
  1456. _i1=a1;
  1457. while (!((_i2)==(a3)))
  1458. {
  1459. (C)[_i1]=((a2)[_i2]);
  1460. _i2=(_i2)+(1);
  1461. _i1=(_i1)+(1);
  1462. }
  1463. }
  1464.  
  1465.  
  1466. T336 r336realloc(T336 C,T2 a1,T2 a2){
  1467. T336 R=NULL;
  1468. R=((T336)(calloc(a2,sizeof(T0*))));
  1469. r336copy_from(R,C,(a1)-(1));
  1470. return R;
  1471. }
  1472.  
  1473.  
  1474. void r336copy_from(T336 C,T336 a1,T2 a2){
  1475. T2 _i=0;
  1476. _i=a2;
  1477. while (!((_i)<(0)))
  1478. {
  1479. (C)[_i]=((a1)[_i]);
  1480. _i=(_i)-(1);
  1481. }
  1482. }
  1483.  
  1484.  
  1485. void r336set_all_with(T336 C,T0* a1,T2 a2){
  1486. T2 _i=0;
  1487. _i=a2;
  1488. while (!((_i)<(0)))
  1489. {
  1490. (C)[_i]=(a1);
  1491. _i=(_i)-(1);
  1492. }
  1493. }
  1494.  
  1495.  
  1496. T2 r336fast_index_of(T336 C,T0* a1,T2 a2){
  1497. T2 R=0;
  1498. while (!(((R)>(a2))||((a1)==((void*)((C)[R])))))
  1499. {
  1500. R=(R)+(1);
  1501. }
  1502. return R;
  1503. }
  1504.  
  1505.  
  1506. void r336clear_all(T336 C,T2 a1){
  1507. T2 _i=0;
  1508. T0* _v=NULL;
  1509. _i=a1;
  1510. while (!((_i)<(0)))
  1511. {
  1512. (C)[_i]=(_v);
  1513. _i=(_i)-(1);
  1514. }
  1515. }
  1516.  
  1517.  
  1518. T202 r202realloc(T202 C,T2 a1,T2 a2){
  1519. T202 R=NULL;
  1520. R=((T202)(calloc(a2,sizeof(T0*))));
  1521. r202copy_from(R,C,(a1)-(1));
  1522. return R;
  1523. }
  1524.  
  1525.  
  1526. void r202copy_from(T202 C,T202 a1,T2 a2){
  1527. T2 _i=0;
  1528. _i=a2;
  1529. while (!((_i)<(0)))
  1530. {
  1531. (C)[_i]=((a1)[_i]);
  1532. _i=(_i)-(1);
  1533. }
  1534. }
  1535.  
  1536.  
  1537. void r202set_all_with(T202 C,T0* a1,T2 a2){
  1538. T2 _i=0;
  1539. _i=a2;
  1540. while (!((_i)<(0)))
  1541. {
  1542. (C)[_i]=(a1);
  1543. _i=(_i)-(1);
  1544. }
  1545. }
  1546.  
  1547.  
  1548. void r202clear_all(T202 C,T2 a1){
  1549. T2 _i=0;
  1550. T0* _v=NULL;
  1551. _i=a1;
  1552. while (!((_i)<(0)))
  1553. {
  1554. (C)[_i]=(_v);
  1555. _i=(_i)-(1);
  1556. }
  1557. }
  1558.  
  1559.  
  1560. T359 r359realloc(T359 C,T2 a1,T2 a2){
  1561. T359 R=NULL;
  1562. R=((T359)(calloc(a2,sizeof(T0*))));
  1563. r359copy_from(R,C,(a1)-(1));
  1564. return R;
  1565. }
  1566.  
  1567.  
  1568. void r359copy_from(T359 C,T359 a1,T2 a2){
  1569. T2 _i=0;
  1570. _i=a2;
  1571. while (!((_i)<(0)))
  1572. {
  1573. (C)[_i]=((a1)[_i]);
  1574. _i=(_i)-(1);
  1575. }
  1576. }
  1577.  
  1578.  
  1579. void r359set_all_with(T359 C,T0* a1,T2 a2){
  1580. T2 _i=0;
  1581. _i=a2;
  1582. while (!((_i)<(0)))
  1583. {
  1584. (C)[_i]=(a1);
  1585. _i=(_i)-(1);
  1586. }
  1587. }
  1588.  
  1589.  
  1590. T332 r332realloc(T332 C,T2 a1,T2 a2){
  1591. T332 R=NULL;
  1592. R=((T332)(calloc(a2,sizeof(T0*))));
  1593. r332copy_from(R,C,(a1)-(1));
  1594. return R;
  1595. }
  1596.  
  1597.  
  1598. void r332copy_from(T332 C,T332 a1,T2 a2){
  1599. T2 _i=0;
  1600. _i=a2;
  1601. while (!((_i)<(0)))
  1602. {
  1603. (C)[_i]=((a1)[_i]);
  1604. _i=(_i)-(1);
  1605. }
  1606. }
  1607.  
  1608.  
  1609. T281 r281realloc(T281 C,T2 a1,T2 a2){
  1610. T281 R=NULL;
  1611. R=((T281)(calloc(a2,sizeof(T0*))));
  1612. r281copy_from(R,C,(a1)-(1));
  1613. return R;
  1614. }
  1615.  
  1616.  
  1617. void r281copy_from(T281 C,T281 a1,T2 a2){
  1618. T2 _i=0;
  1619. _i=a2;
  1620. while (!((_i)<(0)))
  1621. {
  1622. (C)[_i]=((a1)[_i]);
  1623. _i=(_i)-(1);
  1624. }
  1625. }
  1626.  
  1627.  
  1628. T208 r208realloc(T208 C,T2 a1,T2 a2){
  1629. T208 R=NULL;
  1630. R=((T208)(calloc(a2,sizeof(T0*))));
  1631. r208copy_from(R,C,(a1)-(1));
  1632. return R;
  1633. }
  1634.  
  1635.  
  1636. void r208copy_from(T208 C,T208 a1,T2 a2){
  1637. T2 _i=0;
  1638. _i=a2;
  1639. while (!((_i)<(0)))
  1640. {
  1641. (C)[_i]=((a1)[_i]);
  1642. _i=(_i)-(1);
  1643. }
  1644. }
  1645.  
  1646.  
  1647. void r208set_all_with(T208 C,T0* a1,T2 a2){
  1648. T2 _i=0;
  1649. _i=a2;
  1650. while (!((_i)<(0)))
  1651. {
  1652. (C)[_i]=(a1);
  1653. _i=(_i)-(1);
  1654. }
  1655. }
  1656.  
  1657.  
  1658. void r208clear_all(T208 C,T2 a1){
  1659. T2 _i=0;
  1660. T0* _v=NULL;
  1661. _i=a1;
  1662. while (!((_i)<(0)))
  1663. {
  1664. (C)[_i]=(_v);
  1665. _i=(_i)-(1);
  1666. }
  1667. }
  1668.  
  1669.  
  1670. T80 r80realloc(T80 C,T2 a1,T2 a2){
  1671. T80 R=NULL;
  1672. R=((T80)(calloc(a2,sizeof(T0*))));
  1673. r80copy_from(R,C,(a1)-(1));
  1674. return R;
  1675. }
  1676.  
  1677.  
  1678. void r80copy_from(T80 C,T80 a1,T2 a2){
  1679. T2 _i=0;
  1680. _i=a2;
  1681. while (!((_i)<(0)))
  1682. {
  1683. (C)[_i]=((a1)[_i]);
  1684. _i=(_i)-(1);
  1685. }
  1686. }
  1687.  
  1688.  
  1689. T357 r357realloc(T357 C,T2 a1,T2 a2){
  1690. T357 R=NULL;
  1691. R=((T357)(calloc(a2,sizeof(T0*))));
  1692. r357copy_from(R,C,(a1)-(1));
  1693. return R;
  1694. }
  1695.  
  1696.  
  1697. void r357copy_from(T357 C,T357 a1,T2 a2){
  1698. T2 _i=0;
  1699. _i=a2;
  1700. while (!((_i)<(0)))
  1701. {
  1702. (C)[_i]=((a1)[_i]);
  1703. _i=(_i)-(1);
  1704. }
  1705. }
  1706.  
  1707.  
  1708. void r357set_all_with(T357 C,T0* a1,T2 a2){
  1709. T2 _i=0;
  1710. _i=a2;
  1711. while (!((_i)<(0)))
  1712. {
  1713. (C)[_i]=(a1);
  1714. _i=(_i)-(1);
  1715. }
  1716. }
  1717.  
  1718.  
  1719. T183 r183realloc(T183 C,T2 a1,T2 a2){
  1720. T183 R=NULL;
  1721. R=((T183)(calloc(a2,sizeof(T0*))));
  1722. r183copy_from(R,C,(a1)-(1));
  1723. return R;
  1724. }
  1725.  
  1726.  
  1727. void r183copy_from(T183 C,T183 a1,T2 a2){
  1728. T2 _i=0;
  1729. _i=a2;
  1730. while (!((_i)<(0)))
  1731. {
  1732. (C)[_i]=((a1)[_i]);
  1733. _i=(_i)-(1);
  1734. }
  1735. }
  1736.  
  1737.  
  1738. void r183set_all_with(T183 C,T0* a1,T2 a2){
  1739. T2 _i=0;
  1740. _i=a2;
  1741. while (!((_i)<(0)))
  1742. {
  1743. (C)[_i]=(a1);
  1744. _i=(_i)-(1);
  1745. }
  1746. }
  1747.  
  1748.  
  1749. T98 r98realloc(T98 C,T2 a1,T2 a2){
  1750. T98 R=NULL;
  1751. R=((T98)(calloc(a2,sizeof(T0*))));
  1752. r98copy_from(R,C,(a1)-(1));
  1753. return R;
  1754. }
  1755.  
  1756.  
  1757. void r98copy_from(T98 C,T98 a1,T2 a2){
  1758. T2 _i=0;
  1759. _i=a2;
  1760. while (!((_i)<(0)))
  1761. {
  1762. (C)[_i]=((a1)[_i]);
  1763. _i=(_i)-(1);
  1764. }
  1765. }
  1766.  
  1767.  
  1768. T69 r69realloc(T69 C,T2 a1,T2 a2){
  1769. T69 R=NULL;
  1770. R=((T69)(calloc(a2,sizeof(T68))));
  1771. r69copy_from(R,C,(a1)-(1));
  1772. return R;
  1773. }
  1774.  
  1775.  
  1776. void r69copy_from(T69 C,T69 a1,T2 a2){
  1777. T2 _i=0;
  1778. _i=a2;
  1779. while (!((_i)<(0)))
  1780. {
  1781. memcpy((C)+(_i),&((a1)[_i]),sizeof(T68));
  1782. _i=(_i)-(1);
  1783. }
  1784. }
  1785.  
  1786.  
  1787. T2 r69fast_index_of(T69 C,T68 a1,T2 a2){
  1788. T2 R=0;
  1789. while (!(((R)>(a2))||(!se_cmpT68((a1),((C)[R])))))
  1790. {
  1791. R=(R)+(1);
  1792. }
  1793. return R;
  1794. }
  1795.  
  1796.  
  1797. T387 r387realloc(T387 C,T2 a1,T2 a2){
  1798. T387 R=NULL;
  1799. R=((T387)(calloc(a2,sizeof(T0*))));
  1800. r387copy_from(R,C,(a1)-(1));
  1801. return R;
  1802. }
  1803.  
  1804.  
  1805. void r387copy_from(T387 C,T387 a1,T2 a2){
  1806. T2 _i=0;
  1807. _i=a2;
  1808. while (!((_i)<(0)))
  1809. {
  1810. (C)[_i]=((a1)[_i]);
  1811. _i=(_i)-(1);
  1812. }
  1813. }
  1814.  
  1815.  
  1816. void r387set_all_with(T387 C,T0* a1,T2 a2){
  1817. T2 _i=0;
  1818. _i=a2;
  1819. while (!((_i)<(0)))
  1820. {
  1821. (C)[_i]=(a1);
  1822. _i=(_i)-(1);
  1823. }
  1824. }
  1825.  
  1826.  
  1827. T2 r387fast_index_of(T387 C,T0* a1,T2 a2){
  1828. T2 R=0;
  1829. while (!(((R)>(a2))||((a1)==((void*)((C)[R])))))
  1830. {
  1831. R=(R)+(1);
  1832. }
  1833. return R;
  1834. }
  1835.  
  1836.  
  1837. T373 r373realloc(T373 C,T2 a1,T2 a2){
  1838. T373 R=NULL;
  1839. R=((T373)(calloc(a2,sizeof(T0*))));
  1840. r373copy_from(R,C,(a1)-(1));
  1841. return R;
  1842. }
  1843.  
  1844.  
  1845. void r373copy_from(T373 C,T373 a1,T2 a2){
  1846. T2 _i=0;
  1847. _i=a2;
  1848. while (!((_i)<(0)))
  1849. {
  1850. (C)[_i]=((a1)[_i]);
  1851. _i=(_i)-(1);
  1852. }
  1853. }
  1854.  
  1855.  
  1856. void r373set_all_with(T373 C,T0* a1,T2 a2){
  1857. T2 _i=0;
  1858. _i=a2;
  1859. while (!((_i)<(0)))
  1860. {
  1861. (C)[_i]=(a1);
  1862. _i=(_i)-(1);
  1863. }
  1864. }
  1865.  
  1866.  
  1867. T2 r373fast_index_of(T373 C,T0* a1,T2 a2){
  1868. T2 R=0;
  1869. while (!(((R)>(a2))||((a1)==((void*)((C)[R])))))
  1870. {
  1871. R=(R)+(1);
  1872. }
  1873. return R;
  1874. }
  1875.  
  1876.  
  1877. T365 r365realloc(T365 C,T2 a1,T2 a2){
  1878. T365 R=NULL;
  1879. R=((T365)(calloc(a2,sizeof(T0*))));
  1880. r365copy_from(R,C,(a1)-(1));
  1881. return R;
  1882. }
  1883.  
  1884.  
  1885. void r365copy_from(T365 C,T365 a1,T2 a2){
  1886. T2 _i=0;
  1887. _i=a2;
  1888. while (!((_i)<(0)))
  1889. {
  1890. (C)[_i]=((a1)[_i]);
  1891. _i=(_i)-(1);
  1892. }
  1893. }
  1894.  
  1895.  
  1896. void r365set_all_with(T365 C,T0* a1,T2 a2){
  1897. T2 _i=0;
  1898. _i=a2;
  1899. while (!((_i)<(0)))
  1900. {
  1901. (C)[_i]=(a1);
  1902. _i=(_i)-(1);
  1903. }
  1904. }
  1905.  
  1906.  
  1907. T2 r365fast_index_of(T365 C,T0* a1,T2 a2){
  1908. T2 R=0;
  1909. while (!(((R)>(a2))||((a1)==((void*)((C)[R])))))
  1910. {
  1911. R=(R)+(1);
  1912. }
  1913. return R;
  1914. }
  1915.  
  1916.  
  1917. void r365clear_all(T365 C,T2 a1){
  1918. T2 _i=0;
  1919. T0* _v=NULL;
  1920. _i=a1;
  1921. while (!((_i)<(0)))
  1922. {
  1923. (C)[_i]=(_v);
  1924. _i=(_i)-(1);
  1925. }
  1926. }
  1927.  
  1928.  
  1929. void r347clear(T347 C,T2 a1,T2 a2){
  1930. T2 _i=0;
  1931. T0* _v=NULL;
  1932. _i=a1;
  1933. while (!((_i)>(a2)))
  1934. {
  1935. (C)[_i]=(_v);
  1936. _i=(_i)+(1);
  1937. }
  1938. }
  1939.  
  1940.  
  1941. T347 r347realloc(T347 C,T2 a1,T2 a2){
  1942. T347 R=NULL;
  1943. R=((T347)(calloc(a2,sizeof(T0*))));
  1944. r347copy_from(R,C,(a1)-(1));
  1945. return R;
  1946. }
  1947.  
  1948.  
  1949. void r347move(T347 C,T2 a1,T2 a2,T2 a3){
  1950. T2 _i=0;
  1951. /*[IF*/
  1952. if((a3)==(0)){
  1953. }
  1954.  else if((a3)<(0)){
  1955. _i=a1;
  1956. while (!((_i)>(a2)))
  1957. {
  1958. (C)[(_i)+(a3)]=((C)[_i]);
  1959. _i=(_i)+(1);
  1960. }
  1961. }
  1962. else{
  1963. _i=a2;
  1964. while (!((_i)<(a1)))
  1965. {
  1966. (C)[(_i)+(a3)]=((C)[_i]);
  1967. _i=(_i)-(1);
  1968. }
  1969. }
  1970. /*FI]*/
  1971. }
  1972.  
  1973.  
  1974. void r347copy_from(T347 C,T347 a1,T2 a2){
  1975. T2 _i=0;
  1976. _i=a2;
  1977. while (!((_i)<(0)))
  1978. {
  1979. (C)[_i]=((a1)[_i]);
  1980. _i=(_i)-(1);
  1981. }
  1982. }
  1983.  
  1984.  
  1985. void r347set_all_with(T347 C,T0* a1,T2 a2){
  1986. T2 _i=0;
  1987. _i=a2;
  1988. while (!((_i)<(0)))
  1989. {
  1990. (C)[_i]=(a1);
  1991. _i=(_i)-(1);
  1992. }
  1993. }
  1994.  
  1995.  
  1996. T2 r347fast_index_of(T347 C,T0* a1,T2 a2){
  1997. T2 R=0;
  1998. while (!(((R)>(a2))||((a1)==((void*)((C)[R])))))
  1999. {
  2000. R=(R)+(1);
  2001. }
  2002. return R;
  2003. }
  2004.  
  2005.  
  2006. T340 r340realloc(T340 C,T2 a1,T2 a2){
  2007. T340 R=NULL;
  2008. R=((T340)(calloc(a2,sizeof(T0*))));
  2009. r340copy_from(R,C,(a1)-(1));
  2010. return R;
  2011. }
  2012.  
  2013.  
  2014. void r340copy_from(T340 C,T340 a1,T2 a2){
  2015. T2 _i=0;
  2016. _i=a2;
  2017. while (!((_i)<(0)))
  2018. {
  2019. (C)[_i]=((a1)[_i]);
  2020. _i=(_i)-(1);
  2021. }
  2022. }
  2023.  
  2024.  
  2025. void r340set_all_with(T340 C,T0* a1,T2 a2){
  2026. T2 _i=0;
  2027. _i=a2;
  2028. while (!((_i)<(0)))
  2029. {
  2030. (C)[_i]=(a1);
  2031. _i=(_i)-(1);
  2032. }
  2033. }
  2034.  
  2035.  
  2036. void r340clear_all(T340 C,T2 a1){
  2037. T2 _i=0;
  2038. T0* _v=NULL;
  2039. _i=a1;
  2040. while (!((_i)<(0)))
  2041. {
  2042. (C)[_i]=(_v);
  2043. _i=(_i)-(1);
  2044. }
  2045. }
  2046.  
  2047.  
  2048. T324 r324realloc(T324 C,T2 a1,T2 a2){
  2049. T324 R=NULL;
  2050. R=((T324)(calloc(a2,sizeof(T0*))));
  2051. r324copy_from(R,C,(a1)-(1));
  2052. return R;
  2053. }
  2054.  
  2055.  
  2056. void r324copy_from(T324 C,T324 a1,T2 a2){
  2057. T2 _i=0;
  2058. _i=a2;
  2059. while (!((_i)<(0)))
  2060. {
  2061. (C)[_i]=((a1)[_i]);
  2062. _i=(_i)-(1);
  2063. }
  2064. }
  2065.  
  2066.  
  2067. T86 r86realloc(T86 C,T2 a1,T2 a2){
  2068. T86 R=NULL;
  2069. R=((T86)(calloc(a2,sizeof(T0*))));
  2070. r86copy_from(R,C,(a1)-(1));
  2071. return R;
  2072. }
  2073.  
  2074.  
  2075. void r86copy_from(T86 C,T86 a1,T2 a2){
  2076. T2 _i=0;
  2077. _i=a2;
  2078. while (!((_i)<(0)))
  2079. {
  2080. (C)[_i]=((a1)[_i]);
  2081. _i=(_i)-(1);
  2082. }
  2083. }
  2084.  
  2085.  
  2086. void r86set_all_with(T86 C,T0* a1,T2 a2){
  2087. T2 _i=0;
  2088. _i=a2;
  2089. while (!((_i)<(0)))
  2090. {
  2091. (C)[_i]=(a1);
  2092. _i=(_i)-(1);
  2093. }
  2094. }
  2095.  
  2096.  
  2097. void r375clear(T375 C,T2 a1,T2 a2){
  2098. T2 _i=0;
  2099. T6 _v=0;
  2100. _i=a1;
  2101. while (!((_i)>(a2)))
  2102. {
  2103. (C)[_i]=(_v);
  2104. _i=(_i)+(1);
  2105. }
  2106. }
  2107.  
  2108.  
  2109. T375 r375realloc(T375 C,T2 a1,T2 a2){
  2110. T375 R=NULL;
  2111. R=((T375)(calloc(a2,sizeof(T6))));
  2112. r375copy_from(R,C,(a1)-(1));
  2113. return R;
  2114. }
  2115.  
  2116.  
  2117. void r375move(T375 C,T2 a1,T2 a2,T2 a3){
  2118. T2 _i=0;
  2119. /*[IF*/
  2120. if((a3)==(0)){
  2121. }
  2122.  else if((a3)<(0)){
  2123. _i=a1;
  2124. while (!((_i)>(a2)))
  2125. {
  2126. (C)[(_i)+(a3)]=((C)[_i]);
  2127. _i=(_i)+(1);
  2128. }
  2129. }
  2130. else{
  2131. _i=a2;
  2132. while (!((_i)<(a1)))
  2133. {
  2134. (C)[(_i)+(a3)]=((C)[_i]);
  2135. _i=(_i)-(1);
  2136. }
  2137. }
  2138. /*FI]*/
  2139. }
  2140.  
  2141.  
  2142. void r375copy_from(T375 C,T375 a1,T2 a2){
  2143. T2 _i=0;
  2144. _i=a2;
  2145. while (!((_i)<(0)))
  2146. {
  2147. (C)[_i]=((a1)[_i]);
  2148. _i=(_i)-(1);
  2149. }
  2150. }
  2151.  
  2152.  
  2153. void r375set_all_with(T375 C,T6 a1,T2 a2){
  2154. T2 _i=0;
  2155. _i=a2;
  2156. while (!((_i)<(0)))
  2157. {
  2158. (C)[_i]=(a1);
  2159. _i=(_i)-(1);
  2160. }
  2161. }
  2162.  
  2163.  
  2164. T28 r28realloc(T28 C,T2 a1,T2 a2){
  2165. T28 R=NULL;
  2166. R=((T28)(calloc(a2,sizeof(T2))));
  2167. r28copy_from(R,C,(a1)-(1));
  2168. return R;
  2169. }
  2170.  
  2171.  
  2172. void r28copy_from(T28 C,T28 a1,T2 a2){
  2173. T2 _i=0;
  2174. _i=a2;
  2175. while (!((_i)<(0)))
  2176. {
  2177. (C)[_i]=((a1)[_i]);
  2178. _i=(_i)-(1);
  2179. }
  2180. }
  2181.  
  2182.  
  2183. void r28set_all_with(T28 C,T2 a1,T2 a2){
  2184. T2 _i=0;
  2185. _i=a2;
  2186. while (!((_i)<(0)))
  2187. {
  2188. (C)[_i]=(a1);
  2189. _i=(_i)-(1);
  2190. }
  2191. }
  2192.  
  2193.  
  2194. T6 r7has_string(T7* C,T0* a1){
  2195. T6 R=0;
  2196. R=(r7index_of_string(C,a1))!=(((/*RF2*/(C)->_count/*4*/))+(1));
  2197. return R;
  2198. }
  2199.  
  2200.  
  2201. T6 r7is_equal(T7* C,T0* a1){
  2202. T6 R=0;
  2203. /*[IF*/
  2204. if(((/*RF2*/(C)->_count/*4*/))==((/*RF2*/(((T7*)a1))->_count/*4*/))){
  2205. R=r9fast_memcmp((/*RF2*/(C)->_storage/*0*/),(/*RF2*/(((T7*)a1))->_storage/*0*/),(/*RF2*/(C)->_count/*4*/));
  2206. }
  2207. /*FI]*/
  2208. return R;
  2209. }
  2210.  
  2211.  
  2212. T3 r7last(T7* C){
  2213. T3 R=0;
  2214. R=/*(IRF4.6item*/((/*RF2*/(C)->_storage/*0*/))[((/*RF2*/(C)->_count/*4*/))-(1)]/*)*/;
  2215. return R;
  2216. }
  2217.  
  2218.  
  2219. void r7add_first(T7* C,T3 a1){
  2220. T2 _i=0;
  2221. r7extend(C,((T3)'\40'));
  2222. _i=(/*RF2*/(C)->_count/*4*/);
  2223. while (!((_i)==(1)))
  2224. {
  2225. /*[IRF3.5put*/((/*RF2*/(C)->_storage/*0*/))[(_i)-(1)]=(/*(IRF4.6item*/((/*RF2*/(C)->_storage/*0*/))[((_i)-(1))-(1)]/*)*/);
  2226. /*]*/
  2227. _i=(_i)-(1);
  2228. }
  2229. /*[IRF3.5put*/((/*RF2*/(C)->_storage/*0*/))[(1)-(1)]=(a1);
  2230. /*]*/
  2231. }
  2232. T0*oBC7tmp_string=NULL;
  2233.  
  2234.  
  2235. T8 r7to_external(T7* C){
  2236. T8 R=NULL;
  2237. /*[IF*/
  2238. if(((/*RF2*/(C)->_capacity/*8*/))>((/*RF2*/(C)->_count/*4*/))){
  2239. (/*SFN*/C->_count)=((/*RF2*/(C)->_count/*4*/))+(1);
  2240. /*[IF*/
  2241. if((/*(IRF4.6item*/((/*RF2*/(C)->_storage/*0*/))[((/*RF2*/(C)->_count/*4*/))-(1)]/*)*/)!=(((T3)'\0'))){
  2242. /*[IRF3.5put*/((/*RF2*/(C)->_storage/*0*/))[((/*RF2*/(C)->_count/*4*/))-(1)]=(((T3)'\0'));
  2243. /*]*/
  2244. }
  2245. /*FI]*/
  2246. }
  2247. else{
  2248. r7extend(C,((T3)'\0'));
  2249. }
  2250. /*FI]*/
  2251. (/*SFN*/C->_count)=((/*RF2*/(C)->_count/*4*/))-(1);
  2252. R=((void*)(/*RF2*/(C)->_storage/*0*/));
  2253. return R;
  2254. }
  2255.  
  2256.  
  2257. T6 r7same_as(T7* C,T0* a1){
  2258. T6 R=0;
  2259. T2 _i=0;
  2260. T9 _s2=NULL;
  2261. T9 _s1=NULL;
  2262. _i=(/*RF2*/(C)->_count/*4*/);
  2263. /*[IF*/
  2264. if((_i)==((/*RF2*/(((T7*)a1))->_count/*4*/))){
  2265. /*[IF*/
  2266. if(r9fast_memcmp((/*RF2*/(C)->_storage/*0*/),(/*RF2*/(((T7*)a1))->_storage/*0*/),_i)){
  2267. R=1;
  2268. }
  2269. else{
  2270. _i=(_i)-(1);
  2271. _s1=(/*RF2*/(C)->_storage/*0*/);
  2272. _s2=(/*RF2*/(((T7*)a1))->_storage/*0*/);
  2273. R=1;
  2274. while (!((_i)<(0)))
  2275. {
  2276. /*[IF*/
  2277. if(r3same_as((_s1)[_i],(_s2)[_i])){
  2278. _i=(_i)-(1);
  2279. }
  2280. else{
  2281. _i=-(1);
  2282. R=0;
  2283. }
  2284. /*FI]*/
  2285. }
  2286. }
  2287. /*FI]*/
  2288. }
  2289. /*FI]*/
  2290. return R;
  2291. }
  2292.  
  2293.  
  2294. void r7prepend(T7* C,T0* a1){
  2295. T2 _j=0;
  2296. T2 _i=0;
  2297. _i=(/*RF2*/(C)->_count/*4*/);
  2298. _j=(/*RF2*/(((T7*)a1))->_count/*4*/);
  2299. r7resize(C,(_i)+(_j));
  2300. /*[IF*/
  2301. if(((_i)>(0))&&((_j)>(0))){
  2302. r9move((/*RF2*/(C)->_storage/*0*/),0,(_i)-(1),_j);
  2303. }
  2304. /*FI]*/
  2305. r9copy_from((/*RF2*/(C)->_storage/*0*/),(/*RF2*/(((T7*)a1))->_storage/*0*/),(_j)-(1));
  2306. }
  2307.  
  2308.  
  2309. void r7copy(T7* C,T0* a1){
  2310. (/*SFN*/C->_count)=(/*RF2*/(((T7*)a1))->_count/*4*/);
  2311. /*[IF*/
  2312. if(((/*RF2*/(C)->_count/*4*/))>(0)){
  2313. /*[IF*/
  2314. if(((/*RF2*/(C)->_capacity/*8*/))<((/*RF2*/(C)->_count/*4*/))){
  2315. (/*SFN*/C->_storage)=((T9)(calloc((/*RF2*/(C)->_count/*4*/),sizeof(T3))));
  2316. (/*SFN*/C->_capacity)=(/*RF2*/(C)->_count/*4*/);
  2317. }
  2318. /*FI]*/
  2319. r9copy_from((/*RF2*/(C)->_storage/*0*/),(/*RF2*/(((T7*)a1))->_storage/*0*/),((/*RF2*/(C)->_count/*4*/))-(1));
  2320. }
  2321. /*FI]*/
  2322. }
  2323.  
  2324.  
  2325. void r7swap(T7* C,T2 a1,T2 a2){
  2326. T3 _tmp=0;
  2327. _tmp=/*(IRF4.6item*/((/*RF2*/(C)->_storage/*0*/))[(a1)-(1)]/*)*/;
  2328. /*[IRF3.5put*/((/*RF2*/(C)->_storage/*0*/))[(a1)-(1)]=(/*(IRF4.6item*/((/*RF2*/(C)->_storage/*0*/))[(a2)-(1)]/*)*/);
  2329. /*]*/
  2330. /*[IRF3.5put*/((/*RF2*/(C)->_storage/*0*/))[(a2)-(1)]=(_tmp);
  2331. /*]*/
  2332. }
  2333. T0*oBC7split_buffer=NULL;
  2334.  
  2335.  
  2336. void r7extend_unless(T7* C,T3 a1){
  2337. /*[IF*/
  2338. if((((/*RF2*/(C)->_count/*4*/))==(0))||((/*(IRF4.6item*/((/*RF2*/(C)->_storage/*0*/))[((/*RF2*/(C)->_count/*4*/))-(1)]/*)*/)!=(a1))){
  2339. r7extend(C,a1);
  2340. }
  2341. /*FI]*/
  2342. }
  2343.  
  2344.  
  2345. T2 r7to_integer(T7* C){
  2346. T2 R=0;
  2347. T6 _minus=0;
  2348. T3 _cc=0;
  2349. T2 _state=0;
  2350. T2 _i=0;
  2351. _i=1;
  2352. while (!((_i)>((/*RF2*/(C)->_count/*4*/))))
  2353. {
  2354. _cc=/*(IRF4.6item*/((/*RF2*/(C)->_storage/*0*/))[(_i)-(1)]/*)*/;
  2355. {int z1=_state;
  2356.  
  2357. if((0==z1)){
  2358. /*[IF*/
  2359. if(r3is_separator(_cc)){
  2360. }
  2361.  else if((_cc)==(((T3)'\53'))){
  2362. _state=1;
  2363. }
  2364.  else if((_cc)==(((T3)'\55'))){
  2365. _minus=1;
  2366. _state=1;
  2367. }
  2368. else{
  2369. R=r3value(_cc);
  2370. _state=2;
  2371. }
  2372. /*FI]*/
  2373. }
  2374.  else 
  2375. if((1==z1)){
  2376. /*[IF*/
  2377. if(r3is_separator(_cc)){
  2378. }
  2379. else{
  2380. R=r3value(_cc);
  2381. _state=2;
  2382. }
  2383. /*FI]*/
  2384. }
  2385.  else 
  2386. if((2==z1)){
  2387. /*[IF*/
  2388. if(r3is_digit(_cc)){
  2389. R=((R)*(10))+(r3value(_cc));
  2390. }
  2391. else{
  2392. _state=3;
  2393. }
  2394. /*FI]*/
  2395. }
  2396.  else {}}
  2397. _i=(_i)+(1);
  2398. }
  2399. /*[IF*/
  2400. if(_minus){
  2401. R=-(R);
  2402. }
  2403. /*FI]*/
  2404. return R;
  2405. }
  2406.  
  2407.  
  2408. void r7resize(T7* C,T2 a1){
  2409. T9 _s=NULL;
  2410. /*[IF*/
  2411. if((a1)<=((/*RF2*/(C)->_count/*4*/))){
  2412. (/*SFN*/C->_count)=a1;
  2413. }
  2414.  else if(((/*RF2*/(C)->_capacity/*8*/))<(a1)){
  2415. /*[IF*/
  2416. if(((/*RF2*/(C)->_capacity/*8*/))==(0)){
  2417. (/*SFN*/C->_storage)=((T9)(calloc(a1,sizeof(T3))));
  2418. }
  2419. else{
  2420. (/*SFN*/C->_storage)=r9realloc((/*RF2*/(C)->_storage/*0*/),(/*RF2*/(C)->_capacity/*8*/),a1);
  2421. }
  2422. /*FI]*/
  2423. (/*SFN*/C->_capacity)=a1;
  2424. (/*SFN*/C->_count)=a1;
  2425. }
  2426. else{
  2427. r9clear((/*RF2*/(C)->_storage/*0*/),(/*RF2*/(C)->_count/*4*/),(a1)-(1));
  2428. (/*SFN*/C->_count)=a1;
  2429. }
  2430. /*FI]*/
  2431. }
  2432.  
  2433.  
  2434. void r7head(T7* C,T2 a1){
  2435. /*[IF*/
  2436. if((a1)<((/*RF2*/(C)->_count/*4*/))){
  2437. r7remove_last(C,((/*RF2*/(C)->_count/*4*/))-(a1));
  2438. }
  2439. /*FI]*/
  2440. }
  2441.  
  2442.  
  2443. void r7append(T7* C,T0* a1){
  2444. T2 _needed_capacity=0;
  2445. T2 _other_count=0;
  2446. _other_count=(/*RF2*/(((T7*)a1))->_count/*4*/);
  2447. _needed_capacity=((/*RF2*/(C)->_count/*4*/))+(_other_count);
  2448. /*[IF*/
  2449. if(((/*RF2*/(C)->_capacity/*8*/))<(_needed_capacity)){
  2450. /*[IF*/
  2451. if(((/*RF2*/(C)->_capacity/*8*/))==(0)){
  2452. (/*SFN*/C->_capacity)=_needed_capacity;
  2453. (/*SFN*/C->_storage)=((T9)(calloc((/*RF2*/(C)->_capacity/*8*/),sizeof(T3))));
  2454. }
  2455. else{
  2456. (/*SFN*/C->_storage)=r9realloc((/*RF2*/(C)->_storage/*0*/),(/*RF2*/(C)->_capacity/*8*/),_needed_capacity);
  2457. (/*SFN*/C->_capacity)=_needed_capacity;
  2458. }
  2459. /*FI]*/
  2460. }
  2461. /*FI]*/
  2462. r9copy_at((/*RF2*/(C)->_storage/*0*/),(/*RF2*/(C)->_count/*4*/),(/*RF2*/(((T7*)a1))->_storage/*0*/),_other_count);
  2463. (/*SFN*/C->_count)=_needed_capacity;
  2464. }
  2465.  
  2466.  
  2467. T0* r7twin(T7* C){
  2468. T0* R=NULL;
  2469. R=malloc(sizeof(*C));
  2470. *((T7*)R)=M7;
  2471. r7copy(((T7*)R),((T0*)C));
  2472. return R;
  2473. }
  2474.  
  2475.  
  2476. T2 r7substring_index(T7* C,T0* a1,T2 a2){
  2477. T2 R=0;
  2478. T2 _s=0;
  2479. T2 _i=0;
  2480. _s=a2;
  2481. while (!(((R)!=(0))||((((_s)+((/*RF2*/(((T7*)a1))->_count/*4*/)))-(1))>((/*RF2*/(C)->_count/*4*/)))))
  2482. {
  2483. _i=1;
  2484. while (!(((_i)>((/*RF2*/(((T7*)a1))->_count/*4*/)))||((/*(IRF4.6item*/((/*RF2*/(C)->_storage/*0*/))[(((_s)+(_i))-(1))-(1)]/*)*/)!=(/*(IRF4.6item*/((/*RF2*/(((T7*)a1))->_storage/*0*/))[(_i)-(1)]/*)*/))))
  2485. {
  2486. _i=(_i)+(1);
  2487. }
  2488. /*[IF*/
  2489. if((_i)>((/*RF2*/(((T7*)a1))->_count/*4*/))){
  2490. R=_s;
  2491. }
  2492. else{
  2493. _s=(_s)+(1);
  2494. }
  2495. /*FI]*/
  2496. }
  2497. return R;
  2498. }
  2499.  
  2500.  
  2501. T0* r7split(T7* C){
  2502. T0* R=NULL;
  2503. /*[IF*/
  2504. if(((/*RF2*/(C)->_count/*4*/))>(0)){
  2505. r44clear((T44*)(oBC7split_buffer));
  2506. r7split_in(C,oBC7split_buffer);
  2507. /*[IF*/
  2508. if(!(r44is_empty((T44*)(oBC7split_buffer)))){
  2509. R=r44twin((T44*)(oBC7split_buffer));
  2510. }
  2511. /*FI]*/
  2512. }
  2513. /*FI]*/
  2514. return R;
  2515. }
  2516.  
  2517.  
  2518. void r7to_lower(T7* C){
  2519. T2 _i=0;
  2520. _i=(/*RF2*/(C)->_count/*4*/);
  2521. while (!((_i)==(0)))
  2522. {
  2523. /*[IRF3.5put*/((/*RF2*/(C)->_storage/*0*/))[(_i)-(1)]=(r3to_lower(/*(IRF4.6item*/((/*RF2*/(C)->_storage/*0*/))[(_i)-(1)]/*)*/));
  2524. /*]*/
  2525. _i=(_i)-(1);
  2526. }
  2527. }
  2528.  
  2529.  
  2530. void r7remove_first(T7* C,T2 a1){
  2531. /*[IF*/
  2532. if((a1)>(0)){
  2533. r7remove_between(C,1,a1);
  2534. }
  2535. /*FI]*/
  2536. }
  2537.  
  2538.  
  2539. T2 r7index_of_string(T7* C,T0* a1){
  2540. T2 R=0;
  2541. T2 _i3=0;
  2542. T2 _i2=0;
  2543. T2 _i1=0;
  2544. T6 _stop=0;
  2545. _i1=1;
  2546. _i2=(/*RF2*/(((T7*)a1))->_count/*4*/);
  2547. _i3=_i2;
  2548. while (!((R)!=(0)))
  2549. {
  2550. /*[IF*/
  2551. if((_i2)>((/*RF2*/(C)->_count/*4*/))){
  2552. R=((/*RF2*/(C)->_count/*4*/))+(1);
  2553. }
  2554. else{
  2555. _stop=0;
  2556. while (!(_stop))
  2557. {
  2558. /*[IF*/
  2559. if((_i3)==(0)){
  2560. _stop=1;
  2561. R=_i1;
  2562. }
  2563.  else if((/*(IRF4.6item*/((/*RF2*/(((T7*)a1))->_storage/*0*/))[(_i3)-(1)]/*)*/)!=(/*(IRF4.6item*/((/*RF2*/(C)->_storage/*0*/))[(_i2)-(1)]/*)*/)){
  2564. _stop=1;
  2565. }
  2566. /*FI]*/
  2567. _i3=(_i3)-(1);
  2568. _i2=(_i2)-(1);
  2569. }
  2570. }
  2571. /*FI]*/
  2572. _i1=(_i1)+(1);
  2573. _i3=(/*RF2*/(((T7*)a1))->_count/*4*/);
  2574. _i2=((_i1)+(_i3))-(1);
  2575. }
  2576. return R;
  2577. }
  2578.  
  2579.  
  2580. void r7remove_between(T7* C,T2 a1,T2 a2){
  2581. T2 _i=0;
  2582. _i=a2;
  2583. while (!((_i)>=((/*RF2*/(C)->_count/*4*/))))
  2584. {
  2585. /*[IRF3.5put*/((/*RF2*/(C)->_storage/*0*/))[(((a1)+(_i))-(a2))-(1)]=(/*(IRF4.6item*/((/*RF2*/(C)->_storage/*0*/))[((_i)+(1))-(1)]/*)*/);
  2586. /*]*/
  2587. _i=(_i)+(1);
  2588. }
  2589. (/*SFN*/C->_count)=((/*RF2*/(C)->_count/*4*/))-(((a2)-(a1))+(1));
  2590. }
  2591.  
  2592.  
  2593. void r7make(T7* C,T2 a1){
  2594. /*[IF*/
  2595. if((a1)>(0)){
  2596. /*[IF*/
  2597. if(((/*RF2*/(C)->_capacity/*8*/))<(a1)){
  2598. (/*SFN*/C->_storage)=((T9)(calloc(a1,sizeof(T3))));
  2599. (/*SFN*/C->_capacity)=a1;
  2600. }
  2601. /*FI]*/
  2602. }
  2603. /*FI]*/
  2604. (/*SFN*/C->_count)=0;
  2605. }
  2606.  
  2607.  
  2608. void r7to_hexadecimal(T7* C){
  2609. T2 _value=0;
  2610. T2 _new_count=0;
  2611. T2 _k=0;
  2612. T2 _i=0;
  2613. _i=1;
  2614. _k=((/*RF2*/(C)->_count/*4*/))%(4);
  2615. /*[IF*/
  2616. if((_k)>(0)){
  2617. _new_count=1;
  2618. }
  2619. /*FI]*/
  2620. while (!((_k)==(0)))
  2621. {
  2622. _value=((_value)*(2))+(r3value(/*(IRF4.6item*/((/*RF2*/(C)->_storage/*0*/))[(_i)-(1)]/*)*/));
  2623. _i=(_i)+(1);
  2624. _k=(_k)-(1);
  2625. }
  2626. /*[IF*/
  2627. if((_new_count)>(0)){
  2628. /*[IRF3.5put*/((/*RF2*/(C)->_storage/*0*/))[(_new_count)-(1)]=(r2hexadecimal_digit(_value));
  2629. /*]*/
  2630. }
  2631. /*FI]*/
  2632. while (!((_i)>((/*RF2*/(C)->_count/*4*/))))
  2633. {
  2634. _value=r3value(/*(IRF4.6item*/((/*RF2*/(C)->_storage/*0*/))[(_i)-(1)]/*)*/);
  2635. _i=(_i)+(1);
  2636. _k=3;
  2637. while (!((_k)==(0)))
  2638. {
  2639. _value=((_value)*(2))+(r3value(/*(IRF4.6item*/((/*RF2*/(C)->_storage/*0*/))[(_i)-(1)]/*)*/));
  2640. _i=(_i)+(1);
  2641. _k=(_k)-(1);
  2642. }
  2643. _new_count=(_new_count)+(1);
  2644. /*[IRF3.5put*/((/*RF2*/(C)->_storage/*0*/))[(_new_count)-(1)]=(r2hexadecimal_digit(_value));
  2645. /*]*/
  2646. }
  2647. (/*SFN*/C->_count)=_new_count;
  2648. }
  2649.  
  2650.  
  2651. T6 r7has_prefix(T7* C,T0* a1){
  2652. T6 R=0;
  2653. T2 _i=0;
  2654. /*[IF*/
  2655. if(((/*RF2*/(((T7*)a1))->_count/*4*/))<=((/*RF2*/(C)->_count/*4*/))){
  2656. _i=(/*RF2*/(((T7*)a1))->_count/*4*/);
  2657. while (!(((_i)==(0))||((/*(IRF4.6item*/((/*RF2*/(C)->_storage/*0*/))[(_i)-(1)]/*)*/)!=(/*(IRF4.6item*/((/*RF2*/(((T7*)a1))->_storage/*0*/))[(_i)-(1)]/*)*/))))
  2658. {
  2659. _i=(_i)-(1);
  2660. }
  2661. R=(_i)==(0);
  2662. }
  2663. /*FI]*/
  2664. return R;
  2665. }
  2666.  
  2667.  
  2668. T2 r7hash_code(T7* C){
  2669. T2 R=0;
  2670. T2 _i=0;
  2671. _i=(/*RF2*/(C)->_count/*4*/);
  2672. /*[IF*/
  2673. if((_i)>(5)){
  2674. R=(_i)*(T3code(/*(IRF4.6item*/((/*RF2*/(C)->_storage/*0*/))[(_i)-(1)]/*)*/));
  2675. _i=5;
  2676. }
  2677. /*FI]*/
  2678. while (!((_i)<=(0)))
  2679. {
  2680. R=(R)+(T3code(/*(IRF4.6item*/((/*RF2*/(C)->_storage/*0*/))[(_i)-(1)]/*)*/));
  2681. _i=(_i)-(1);
  2682. }
  2683. R=(R)*((/*RF2*/(C)->_count/*4*/));
  2684. return R;
  2685. }
  2686.  
  2687.  
  2688. void r7reverse(T7* C){
  2689. T2 _i2=0;
  2690. T2 _i1=0;
  2691. _i1=1;
  2692. _i2=(/*RF2*/(C)->_count/*4*/);
  2693. while (!((_i1)>=(_i2)))
  2694. {
  2695. r7swap(C,_i1,_i2);
  2696. _i1=(_i1)+(1);
  2697. _i2=(_i2)-(1);
  2698. }
  2699. }
  2700.  
  2701.  
  2702. void r7remove_last(T7* C,T2 a1){
  2703. (/*SFN*/C->_count)=((/*RF2*/(C)->_count/*4*/))-(a1);
  2704. }
  2705.  
  2706.  
  2707. T2 r7nb_occurrences(T7* C,T3 a1){
  2708. T2 R=0;
  2709. R=r9fast_nb_occurrences((/*RF2*/(C)->_storage/*0*/),a1,((/*RF2*/(C)->_count/*4*/))-(1));
  2710. return R;
  2711. }
  2712.  
  2713.  
  2714. void r7split_in(T7* C,T0* a1){
  2715. T3 _c=0;
  2716. T2 _i=0;
  2717. T2 _state=0;
  2718. /*[IF*/
  2719. if(((/*RF2*/(C)->_count/*4*/))>(0)){
  2720. _i=1;
  2721. while (!((_i)>((/*RF2*/(C)->_count/*4*/))))
  2722. {
  2723. _c=/*(IRF4.6item*/((/*RF2*/(C)->_storage/*0*/))[(_i)-(1)]/*)*/;
  2724. /*[IF*/
  2725. if((_state)==(0)){
  2726. /*[IF*/
  2727. if(!(r3is_separator(_c))){
  2728. /*[IRF3.3clear*/((((T7*)((T7*)(oBC7tmp_string))))->_count)=(0);
  2729. /*]*/
  2730. r7extend((T7*)(oBC7tmp_string),_c);
  2731. _state=1;
  2732. }
  2733. /*FI]*/
  2734. }
  2735. else{
  2736. /*[IF*/
  2737. if(!(r3is_separator(_c))){
  2738. r7extend((T7*)(oBC7tmp_string),_c);
  2739. }
  2740. else{
  2741. X330add_last(a1,r7twin((T7*)(oBC7tmp_string)));
  2742. _state=0;
  2743. }
  2744. /*FI]*/
  2745. }
  2746. /*FI]*/
  2747. _i=(_i)+(1);
  2748. }
  2749. /*[IF*/
  2750. if((_state)==(1)){
  2751. X330add_last(a1,r7twin((T7*)(oBC7tmp_string)));
  2752. }
  2753. /*FI]*/
  2754. }
  2755. /*FI]*/
  2756. }
  2757.  
  2758.  
  2759. T6 r7_px_60(T7* C,T0* a1){
  2760. T6 R=0;
  2761. T2 _i=0;
  2762. _i=1;
  2763. while (!(((((/*RF2*/(C)->_count/*4*/))<(_i))||(((/*RF2*/(((T7*)a1))->_count/*4*/))<(_i)))||((/*(IRF4.6item*/((/*RF2*/(C)->_storage/*0*/))[(_i)-(1)]/*)*/)!=(/*(IRF4.6item*/((/*RF2*/(((T7*)a1))->_storage/*0*/))[(_i)-(1)]/*)*/))))
  2764. {
  2765. _i=(_i)+(1);
  2766. }
  2767. /*[IF*/
  2768. if(((/*RF2*/(C)->_count/*4*/))<(_i)){
  2769. R=((/*RF2*/(((T7*)a1))->_count/*4*/))>=(_i);
  2770. }
  2771.  else if(((/*RF2*/(((T7*)a1))->_count/*4*/))<(_i)){
  2772. R=0;
  2773. }
  2774. else{
  2775. R=(((unsigned)(/*(IRF4.6item*/((/*RF2*/(C)->_storage/*0*/))[(_i)-(1)]/*)*/))<((unsigned)(/*(IRF4.6item*/((/*RF2*/(((T7*)a1))->_storage/*0*/))[(_i)-(1)]/*)*/)));
  2776. }
  2777. /*FI]*/
  2778. return R;
  2779. }
  2780.  
  2781.  
  2782. void r7extend(T7* C,T3 a1){
  2783. T2 _new_capacity=0;
  2784. /*[IF*/
  2785. if(((/*RF2*/(C)->_capacity/*8*/))>((/*RF2*/(C)->_count/*4*/))){
  2786. }
  2787.  else if(((/*RF2*/(C)->_capacity/*8*/))==(0)){
  2788. (/*SFN*/C->_capacity)=32;
  2789. (/*SFN*/C->_storage)=((T9)(calloc((/*RF2*/(C)->_capacity/*8*/),sizeof(T3))));
  2790. }
  2791. else{
  2792. _new_capacity=(2)*((/*RF2*/(C)->_capacity/*8*/));
  2793. (/*SFN*/C->_storage)=r9realloc((/*RF2*/(C)->_storage/*0*/),(/*RF2*/(C)->_capacity/*8*/),_new_capacity);
  2794. (/*SFN*/C->_capacity)=_new_capacity;
  2795. }
  2796. /*FI]*/
  2797. ((/*RF2*/(C)->_storage/*0*/))[(/*RF2*/(C)->_count/*4*/)]=(a1);
  2798. (/*SFN*/C->_count)=((/*RF2*/(C)->_count/*4*/))+(1);
  2799. }
  2800.  
  2801.  
  2802. T6 r7has_suffix(T7* C,T0* a1){
  2803. T6 R=0;
  2804. T2 _i2=0;
  2805. T2 _i1=0;
  2806. /*[IF*/
  2807. if(((/*RF2*/(((T7*)a1))->_count/*4*/))<=((/*RF2*/(C)->_count/*4*/))){
  2808. _i1=(((/*RF2*/(C)->_count/*4*/))-((/*RF2*/(((T7*)a1))->_count/*4*/)))+(1);
  2809. _i2=1;
  2810. while (!((((_i1)>((/*RF2*/(C)->_count/*4*/)))||((_i2)>((/*RF2*/(((T7*)a1))->_count/*4*/))))||((/*(IRF4.6item*/((/*RF2*/(C)->_storage/*0*/))[(_i1)-(1)]/*)*/)!=(/*(IRF4.6item*/((/*RF2*/(((T7*)a1))->_storage/*0*/))[(_i2)-(1)]/*)*/))))
  2811. {
  2812. _i1=(_i1)+(1);
  2813. _i2=(_i2)+(1);
  2814. }
  2815. R=(_i1)>((/*RF2*/(C)->_count/*4*/));
  2816. }
  2817. /*FI]*/
  2818. return R;
  2819. }
  2820.  
  2821.  
  2822. T6 r7has(T7* C,T3 a1){
  2823. T6 R=0;
  2824. R=r9fast_has((/*RF2*/(C)->_storage/*0*/),a1,((/*RF2*/(C)->_count/*4*/))-(1));
  2825. return R;
  2826. }
  2827.  
  2828.  
  2829. void r7to_upper(T7* C){
  2830. T2 _i=0;
  2831. _i=(/*RF2*/(C)->_count/*4*/);
  2832. while (!((_i)==(0)))
  2833. {
  2834. /*[IRF3.5put*/((/*RF2*/(C)->_storage/*0*/))[(_i)-(1)]=(r3to_upper(/*(IRF4.6item*/((/*RF2*/(C)->_storage/*0*/))[(_i)-(1)]/*)*/));
  2835. /*]*/
  2836. _i=(_i)-(1);
  2837. }
  2838. }
  2839.  
  2840.  
  2841. void r279with_capacity(T279* C,T2 a1,T2 a2){
  2842. /*[IF*/
  2843. if(((/*RF2*/(C)->_capacity/*4*/))<(a1)){
  2844. (/*SFN*/C->_storage)=((T281)(calloc(a1,sizeof(T0*))));
  2845. (/*SFN*/C->_capacity)=a1;
  2846. }
  2847. /*FI]*/
  2848. (/*SFN*/C->_lower)=a2;
  2849. (/*SFN*/C->_upper)=(a2)-(1);
  2850. }
  2851.  
  2852.  
  2853. void r279add_last(T279* C,T0* a1){
  2854. T2 _new_capacity=0;
  2855. /*[IF*/
  2856. if(((/*RF2*/(C)->_capacity/*4*/))<((r279count(C))+(1))){
  2857. /*[IF*/
  2858. if(((/*RF2*/(C)->_capacity/*4*/))==(0)){
  2859. (/*SFN*/C->_capacity)=16;
  2860. (/*SFN*/C->_storage)=((T281)(calloc((/*RF2*/(C)->_capacity/*4*/),sizeof(T0*))));
  2861. }
  2862. else{
  2863. _new_capacity=(2)*((/*RF2*/(C)->_capacity/*4*/));
  2864. (/*SFN*/C->_storage)=r281realloc((/*RF2*/(C)->_storage/*0*/),(/*RF2*/(C)->_capacity/*4*/),_new_capacity);
  2865. (/*SFN*/C->_capacity)=_new_capacity;
  2866. }
  2867. /*FI]*/
  2868. }
  2869. /*FI]*/
  2870. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*8*/))+(1);
  2871. /*[IRF3.6put*/{T279* C1=C;
  2872. T0* b1=a1;
  2873. T2 b2=(/*RF2*/(C)->_upper/*8*/);
  2874. ((/*RF2*/(C1)->_storage/*0*/))[(b2)-((/*RF2*/(C1)->_lower/*12*/))]=(b1);
  2875. }/*]*/
  2876. }
  2877.  
  2878.  
  2879. T2 r279count(T279* C){
  2880. T2 R=0;
  2881. R=(((/*RF2*/(C)->_upper/*8*/))-((/*RF2*/(C)->_lower/*12*/)))+(1);
  2882. return R;
  2883. }
  2884.  
  2885.  
  2886. T0* r279item(T279* C,T2 a1){
  2887. T0* R=NULL;
  2888. R=((/*RF2*/(C)->_storage/*0*/))[(a1)-((/*RF2*/(C)->_lower/*12*/))];
  2889. return R;
  2890. }
  2891.  
  2892.  
  2893. void r379add_last(T379* C,T0* a1){
  2894. T2 _new_capacity=0;
  2895. /*[IF*/
  2896. if(((/*RF2*/(C)->_capacity/*8*/))<((r379count(C))+(1))){
  2897. /*[IF*/
  2898. if(((/*RF2*/(C)->_capacity/*8*/))==(0)){
  2899. (/*SFN*/C->_capacity)=16;
  2900. (/*SFN*/C->_storage)=((T350)(calloc((/*RF2*/(C)->_capacity/*8*/),sizeof(T0*))));
  2901. }
  2902. else{
  2903. _new_capacity=(2)*((/*RF2*/(C)->_capacity/*8*/));
  2904. (/*SFN*/C->_storage)=r350realloc((/*RF2*/(C)->_storage/*4*/),(/*RF2*/(C)->_capacity/*8*/),_new_capacity);
  2905. (/*SFN*/C->_capacity)=_new_capacity;
  2906. }
  2907. /*FI]*/
  2908. }
  2909. /*FI]*/
  2910. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*12*/))+(1);
  2911. /*[IRF3.6put*/{T379* C1=C;
  2912. T0* b1=a1;
  2913. T2 b2=(/*RF2*/(C)->_upper/*12*/);
  2914. ((/*RF2*/(C1)->_storage/*4*/))[(b2)-((/*RF2*/(C1)->_lower/*16*/))]=(b1);
  2915. }/*]*/
  2916. }
  2917.  
  2918.  
  2919. void r379make(T379* C,T2 a1,T2 a2){
  2920. T2 _needed=0;
  2921. (/*SFN*/C->_lower)=a1;
  2922. (/*SFN*/C->_upper)=a2;
  2923. _needed=((a2)-(a1))+(1);
  2924. /*[IF*/
  2925. if((_needed)>(0)){
  2926. /*[IF*/
  2927. if(((/*RF2*/(C)->_capacity/*8*/))<(_needed)){
  2928. (/*SFN*/C->_storage)=((T350)(calloc(_needed,sizeof(T0*))));
  2929. (/*SFN*/C->_capacity)=_needed;
  2930. }
  2931. else{
  2932. r379clear_all(C);
  2933. }
  2934. /*FI]*/
  2935. }
  2936. /*FI]*/
  2937. }
  2938.  
  2939.  
  2940. void r379force(T379* C,T0* a1,T2 a2){
  2941. /*[IF*/
  2942. if(((/*RF2*/(C)->_upper/*12*/))<(a2)){
  2943. /*[IF*/
  2944. if((a2)==(((/*RF2*/(C)->_upper/*12*/))+(1))){
  2945. r379add_last(C,a1);
  2946. }
  2947. else{
  2948. r379resize(C,(/*RF2*/(C)->_lower/*16*/),a2);
  2949. /*[IRF3.6put*/{T379* C1=C;
  2950. T0* b1=a1;
  2951. T2 b2=a2;
  2952. ((/*RF2*/(C1)->_storage/*4*/))[(b2)-((/*RF2*/(C1)->_lower/*16*/))]=(b1);
  2953. }/*]*/
  2954. }
  2955. /*FI]*/
  2956. }
  2957.  else if((a2)<((/*RF2*/(C)->_lower/*16*/))){
  2958. r379resize(C,a2,(/*RF2*/(C)->_upper/*12*/));
  2959. /*[IRF3.6put*/{T379* C1=C;
  2960. T0* b1=a1;
  2961. T2 b2=a2;
  2962. ((/*RF2*/(C1)->_storage/*4*/))[(b2)-((/*RF2*/(C1)->_lower/*16*/))]=(b1);
  2963. }/*]*/
  2964. }
  2965. else{
  2966. /*[IRF3.6put*/{T379* C1=C;
  2967. T0* b1=a1;
  2968. T2 b2=a2;
  2969. ((/*RF2*/(C1)->_storage/*4*/))[(b2)-((/*RF2*/(C1)->_lower/*16*/))]=(b1);
  2970. }/*]*/
  2971. }
  2972. /*FI]*/
  2973. }
  2974.  
  2975.  
  2976. void r379resize(T379* C,T2 a1,T2 a2){
  2977. T2 _intersize=0;
  2978. T2 _offset=0;
  2979. T2 _needed=0;
  2980. _needed=((a2)-(a1))+(1);
  2981. /*[IF*/
  2982. if((_needed)>(0)){
  2983. /*[IF*/
  2984. if((_needed)>((/*RF2*/(C)->_capacity/*8*/))){
  2985. /*[IF*/
  2986. if(((/*RF2*/(C)->_capacity/*8*/))==(0)){
  2987. (/*SFN*/C->_storage)=((T350)(calloc(_needed,sizeof(T0*))));
  2988. (/*SFN*/C->_capacity)=_needed;
  2989. }
  2990. else{
  2991. (/*SFN*/C->_storage)=r350realloc((/*RF2*/(C)->_storage/*4*/),(/*RF2*/(C)->_capacity/*8*/),_needed);
  2992. (/*SFN*/C->_capacity)=_needed;
  2993. }
  2994. /*FI]*/
  2995. }
  2996. /*FI]*/
  2997. _offset=((/*RF2*/(C)->_lower/*16*/))-(a1);
  2998. _intersize=((r2min(a2,(/*RF2*/(C)->_upper/*12*/)))-(r2max(a1,(/*RF2*/(C)->_lower/*16*/))))+(1);
  2999. /*[IF*/
  3000. if((_intersize)>(0)){
  3001. /*[IF*/
  3002. if((_offset)==(0)){
  3003. /*[IF*/
  3004. if((_intersize)<(_needed)){
  3005. r350clear((/*RF2*/(C)->_storage/*4*/),_intersize,(_needed)-(1));
  3006. }
  3007. /*FI]*/
  3008. }
  3009.  else if((_offset)<(0)){
  3010. r350move((/*RF2*/(C)->_storage/*4*/),-(_offset),((_intersize)-(_offset))-(1),_offset);
  3011. /*[IF*/
  3012. if((_intersize)<(_needed)){
  3013. r350clear((/*RF2*/(C)->_storage/*4*/),_intersize,(_needed)-(1));
  3014. }
  3015. /*FI]*/
  3016. }
  3017. else{
  3018. r350move((/*RF2*/(C)->_storage/*4*/),0,(_intersize)-(1),_offset);
  3019. r350clear((/*RF2*/(C)->_storage/*4*/),0,(_offset)-(1));
  3020. /*[IF*/
  3021. if(((_intersize)+(_offset))<(_needed)){
  3022. r350clear((/*RF2*/(C)->_storage/*4*/),(_intersize)+(_offset),(_needed)-(1));
  3023. }
  3024. /*FI]*/
  3025. }
  3026. /*FI]*/
  3027. }
  3028. else{
  3029. r350clear((/*RF2*/(C)->_storage/*4*/),0,(_needed)-(1));
  3030. }
  3031. /*FI]*/
  3032. }
  3033. /*FI]*/
  3034. (/*SFN*/C->_lower)=a1;
  3035. (/*SFN*/C->_upper)=a2;
  3036. }
  3037.  
  3038.  
  3039. void r379clear_all(T379* C){
  3040. T0* _value=NULL;
  3041. /*[IRF3.6set_all_with*/{T379* C1=C;
  3042. T0* b1=_value;
  3043. r350set_all_with((/*RF2*/(C1)->_storage/*4*/),b1,((/*RF2*/(C1)->_upper/*12*/))-((/*RF2*/(C1)->_lower/*16*/)));
  3044. }/*]*/
  3045. }
  3046.  
  3047.  
  3048. T2 r379count(T379* C){
  3049. T2 R=0;
  3050. R=(((/*RF2*/(C)->_upper/*12*/))-((/*RF2*/(C)->_lower/*16*/)))+(1);
  3051. return R;
  3052. }
  3053.  
  3054.  
  3055. T0* r379item(T379* C,T2 a1){
  3056. T0* R=NULL;
  3057. R=((/*RF2*/(C)->_storage/*4*/))[(a1)-((/*RF2*/(C)->_lower/*16*/))];
  3058. return R;
  3059. }
  3060.  
  3061.  
  3062. void r318with_capacity(T318* C,T2 a1,T2 a2){
  3063. /*[IF*/
  3064. if(((/*RF2*/(C)->_capacity/*4*/))<(a1)){
  3065. (/*SFN*/C->_storage)=((T320)(calloc(a1,sizeof(T0*))));
  3066. (/*SFN*/C->_capacity)=a1;
  3067. }
  3068. /*FI]*/
  3069. (/*SFN*/C->_lower)=a2;
  3070. (/*SFN*/C->_upper)=(a2)-(1);
  3071. }
  3072.  
  3073.  
  3074. void r318add_last(T318* C,T0* a1){
  3075. T2 _new_capacity=0;
  3076. /*[IF*/
  3077. if(((/*RF2*/(C)->_capacity/*4*/))<((r318count(C))+(1))){
  3078. /*[IF*/
  3079. if(((/*RF2*/(C)->_capacity/*4*/))==(0)){
  3080. (/*SFN*/C->_capacity)=16;
  3081. (/*SFN*/C->_storage)=((T320)(calloc((/*RF2*/(C)->_capacity/*4*/),sizeof(T0*))));
  3082. }
  3083. else{
  3084. _new_capacity=(2)*((/*RF2*/(C)->_capacity/*4*/));
  3085. (/*SFN*/C->_storage)=r320realloc((/*RF2*/(C)->_storage/*0*/),(/*RF2*/(C)->_capacity/*4*/),_new_capacity);
  3086. (/*SFN*/C->_capacity)=_new_capacity;
  3087. }
  3088. /*FI]*/
  3089. }
  3090. /*FI]*/
  3091. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*8*/))+(1);
  3092. /*[IRF3.6put*/{T318* C1=C;
  3093. T0* b1=a1;
  3094. T2 b2=(/*RF2*/(C)->_upper/*8*/);
  3095. ((/*RF2*/(C1)->_storage/*0*/))[(b2)-((/*RF2*/(C1)->_lower/*12*/))]=(b1);
  3096. }/*]*/
  3097. }
  3098.  
  3099.  
  3100. T2 r318count(T318* C){
  3101. T2 R=0;
  3102. R=(((/*RF2*/(C)->_upper/*8*/))-((/*RF2*/(C)->_lower/*12*/)))+(1);
  3103. return R;
  3104. }
  3105.  
  3106.  
  3107. T0* r318item(T318* C,T2 a1){
  3108. T0* R=NULL;
  3109. R=((/*RF2*/(C)->_storage/*0*/))[(a1)-((/*RF2*/(C)->_lower/*12*/))];
  3110. return R;
  3111. }
  3112.  
  3113.  
  3114. void r309with_capacity(T309* C,T2 a1,T2 a2){
  3115. /*[IF*/
  3116. if(((/*RF2*/(C)->_capacity/*4*/))<(a1)){
  3117. (/*SFN*/C->_storage)=((T310)(calloc(a1,sizeof(T0*))));
  3118. (/*SFN*/C->_capacity)=a1;
  3119. }
  3120. /*FI]*/
  3121. (/*SFN*/C->_lower)=a2;
  3122. (/*SFN*/C->_upper)=(a2)-(1);
  3123. }
  3124.  
  3125.  
  3126. void r309add_last(T309* C,T0* a1){
  3127. T2 _new_capacity=0;
  3128. /*[IF*/
  3129. if(((/*RF2*/(C)->_capacity/*4*/))<((r309count(C))+(1))){
  3130. /*[IF*/
  3131. if(((/*RF2*/(C)->_capacity/*4*/))==(0)){
  3132. (/*SFN*/C->_capacity)=16;
  3133. (/*SFN*/C->_storage)=((T310)(calloc((/*RF2*/(C)->_capacity/*4*/),sizeof(T0*))));
  3134. }
  3135. else{
  3136. _new_capacity=(2)*((/*RF2*/(C)->_capacity/*4*/));
  3137. (/*SFN*/C->_storage)=r310realloc((/*RF2*/(C)->_storage/*0*/),(/*RF2*/(C)->_capacity/*4*/),_new_capacity);
  3138. (/*SFN*/C->_capacity)=_new_capacity;
  3139. }
  3140. /*FI]*/
  3141. }
  3142. /*FI]*/
  3143. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*8*/))+(1);
  3144. /*[IRF3.6put*/{T309* C1=C;
  3145. T0* b1=a1;
  3146. T2 b2=(/*RF2*/(C)->_upper/*8*/);
  3147. ((/*RF2*/(C1)->_storage/*0*/))[(b2)-((/*RF2*/(C1)->_lower/*12*/))]=(b1);
  3148. }/*]*/
  3149. }
  3150.  
  3151.  
  3152. T2 r309count(T309* C){
  3153. T2 R=0;
  3154. R=(((/*RF2*/(C)->_upper/*8*/))-((/*RF2*/(C)->_lower/*12*/)))+(1);
  3155. return R;
  3156. }
  3157.  
  3158.  
  3159. T0* r309item(T309* C,T2 a1){
  3160. T0* R=NULL;
  3161. R=((/*RF2*/(C)->_storage/*0*/))[(a1)-((/*RF2*/(C)->_lower/*12*/))];
  3162. return R;
  3163. }
  3164.  
  3165.  
  3166. void r176with_capacity(T176* C,T2 a1,T2 a2){
  3167. /*[IF*/
  3168. if(((/*RF2*/(C)->_capacity/*8*/))<(a1)){
  3169. (/*SFN*/C->_storage)=((T177)(calloc(a1,sizeof(T0*))));
  3170. (/*SFN*/C->_capacity)=a1;
  3171. }
  3172. /*FI]*/
  3173. (/*SFN*/C->_lower)=a2;
  3174. (/*SFN*/C->_upper)=(a2)-(1);
  3175. }
  3176.  
  3177.  
  3178. void r176add_last(T176* C,T0* a1){
  3179. T2 _new_capacity=0;
  3180. /*[IF*/
  3181. if(((/*RF2*/(C)->_capacity/*8*/))<((r176count(C))+(1))){
  3182. /*[IF*/
  3183. if(((/*RF2*/(C)->_capacity/*8*/))==(0)){
  3184. (/*SFN*/C->_capacity)=16;
  3185. (/*SFN*/C->_storage)=((T177)(calloc((/*RF2*/(C)->_capacity/*8*/),sizeof(T0*))));
  3186. }
  3187. else{
  3188. _new_capacity=(2)*((/*RF2*/(C)->_capacity/*8*/));
  3189. (/*SFN*/C->_storage)=r177realloc((/*RF2*/(C)->_storage/*4*/),(/*RF2*/(C)->_capacity/*8*/),_new_capacity);
  3190. (/*SFN*/C->_capacity)=_new_capacity;
  3191. }
  3192. /*FI]*/
  3193. }
  3194. /*FI]*/
  3195. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*12*/))+(1);
  3196. /*[IRF3.6put*/{T176* C1=C;
  3197. T0* b1=a1;
  3198. T2 b2=(/*RF2*/(C)->_upper/*12*/);
  3199. ((/*RF2*/(C1)->_storage/*4*/))[(b2)-((/*RF2*/(C1)->_lower/*16*/))]=(b1);
  3200. }/*]*/
  3201. }
  3202.  
  3203.  
  3204. void r176make(T176* C,T2 a1,T2 a2){
  3205. T2 _needed=0;
  3206. (/*SFN*/C->_lower)=a1;
  3207. (/*SFN*/C->_upper)=a2;
  3208. _needed=((a2)-(a1))+(1);
  3209. /*[IF*/
  3210. if((_needed)>(0)){
  3211. /*[IF*/
  3212. if(((/*RF2*/(C)->_capacity/*8*/))<(_needed)){
  3213. (/*SFN*/C->_storage)=((T177)(calloc(_needed,sizeof(T0*))));
  3214. (/*SFN*/C->_capacity)=_needed;
  3215. }
  3216. else{
  3217. /*[IRF3.6clear_all*/{T176* C1=C;
  3218. T0* __value=NULL;
  3219. /*[IRF3.6set_all_with*/{T176* C2=C1;
  3220. T0* c1=__value;
  3221. r177set_all_with((/*RF2*/(C2)->_storage/*4*/),c1,((/*RF2*/(C2)->_upper/*12*/))-((/*RF2*/(C2)->_lower/*16*/)));
  3222. }/*]*/
  3223. }/*]*/
  3224. }
  3225. /*FI]*/
  3226. }
  3227. /*FI]*/
  3228. }
  3229.  
  3230.  
  3231. void r176copy(T176* C,T0* a1){
  3232. T2 _needed_capacity=0;
  3233. (/*SFN*/C->_lower)=(/*RF2*/(((T176*)a1))->_lower/*16*/);
  3234. (/*SFN*/C->_upper)=(/*RF2*/(((T176*)a1))->_upper/*12*/);
  3235. _needed_capacity=(((/*RF2*/(C)->_upper/*12*/))-((/*RF2*/(C)->_lower/*16*/)))+(1);
  3236. /*[IF*/
  3237. if(((/*RF2*/(C)->_capacity/*8*/))<(_needed_capacity)){
  3238. (/*SFN*/C->_capacity)=_needed_capacity;
  3239. (/*SFN*/C->_storage)=((T177)(calloc((/*RF2*/(C)->_capacity/*8*/),sizeof(T0*))));
  3240. }
  3241. /*FI]*/
  3242. /*[IF*/
  3243. if((_needed_capacity)>(0)){
  3244. r177copy_from((/*RF2*/(C)->_storage/*4*/),(/*RF2*/(((T176*)a1))->_storage/*4*/),(_needed_capacity)-(1));
  3245. }
  3246. /*FI]*/
  3247. }
  3248.  
  3249.  
  3250. T0* r176twin(T176* C){
  3251. T0* R=NULL;
  3252. R=malloc(sizeof(*C));
  3253. *((T176*)R)=M176;
  3254. r176copy(((T176*)R),((T0*)C));
  3255. return R;
  3256. }
  3257.  
  3258.  
  3259. T2 r176count(T176* C){
  3260. T2 R=0;
  3261. R=(((/*RF2*/(C)->_upper/*12*/))-((/*RF2*/(C)->_lower/*16*/)))+(1);
  3262. return R;
  3263. }
  3264.  
  3265.  
  3266. T0* r176item(T176* C,T2 a1){
  3267. T0* R=NULL;
  3268. R=((/*RF2*/(C)->_storage/*4*/))[(a1)-((/*RF2*/(C)->_lower/*16*/))];
  3269. return R;
  3270. }
  3271.  
  3272.  
  3273. void r88with_capacity(T88* C,T2 a1,T2 a2){
  3274. /*[IF*/
  3275. if(((/*RF2*/(C)->_capacity/*4*/))<(a1)){
  3276. (/*SFN*/C->_storage)=((T89)(calloc(a1,sizeof(T0*))));
  3277. (/*SFN*/C->_capacity)=a1;
  3278. }
  3279. /*FI]*/
  3280. (/*SFN*/C->_lower)=a2;
  3281. (/*SFN*/C->_upper)=(a2)-(1);
  3282. }
  3283.  
  3284.  
  3285. void r88add_last(T88* C,T0* a1){
  3286. T2 _new_capacity=0;
  3287. /*[IF*/
  3288. if(((/*RF2*/(C)->_capacity/*4*/))<((r88count(C))+(1))){
  3289. /*[IF*/
  3290. if(((/*RF2*/(C)->_capacity/*4*/))==(0)){
  3291. (/*SFN*/C->_capacity)=16;
  3292. (/*SFN*/C->_storage)=((T89)(calloc((/*RF2*/(C)->_capacity/*4*/),sizeof(T0*))));
  3293. }
  3294. else{
  3295. _new_capacity=(2)*((/*RF2*/(C)->_capacity/*4*/));
  3296. (/*SFN*/C->_storage)=r89realloc((/*RF2*/(C)->_storage/*0*/),(/*RF2*/(C)->_capacity/*4*/),_new_capacity);
  3297. (/*SFN*/C->_capacity)=_new_capacity;
  3298. }
  3299. /*FI]*/
  3300. }
  3301. /*FI]*/
  3302. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*8*/))+(1);
  3303. /*[IRF3.6put*/{T88* C1=C;
  3304. T0* b1=a1;
  3305. T2 b2=(/*RF2*/(C)->_upper/*8*/);
  3306. ((/*RF2*/(C1)->_storage/*0*/))[(b2)-((/*RF2*/(C1)->_lower/*12*/))]=(b1);
  3307. }/*]*/
  3308. }
  3309.  
  3310.  
  3311. T2 r88count(T88* C){
  3312. T2 R=0;
  3313. R=(((/*RF2*/(C)->_upper/*8*/))-((/*RF2*/(C)->_lower/*12*/)))+(1);
  3314. return R;
  3315. }
  3316.  
  3317.  
  3318. T0* r88item(T88* C,T2 a1){
  3319. T0* R=NULL;
  3320. R=((/*RF2*/(C)->_storage/*0*/))[(a1)-((/*RF2*/(C)->_lower/*12*/))];
  3321. return R;
  3322. }
  3323.  
  3324.  
  3325. void r349add_last(T349* C,T0* a1){
  3326. T2 _new_capacity=0;
  3327. /*[IF*/
  3328. if((((/*RF2*/(C)->_upper/*12*/))+(1))<=(((/*RF2*/(C)->_capacity/*8*/))-(1))){
  3329. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*12*/))+(1);
  3330. }
  3331.  else if(((/*RF2*/(C)->_capacity/*8*/))==(0)){
  3332. (/*SFN*/C->_storage)=((T350)(calloc(2,sizeof(T0*))));
  3333. (/*SFN*/C->_capacity)=2;
  3334. (/*SFN*/C->_upper)=0;
  3335. }
  3336. else{
  3337. _new_capacity=(2)*((/*RF2*/(C)->_capacity/*8*/));
  3338. (/*SFN*/C->_storage)=r350realloc((/*RF2*/(C)->_storage/*4*/),(/*RF2*/(C)->_capacity/*8*/),_new_capacity);
  3339. (/*SFN*/C->_capacity)=_new_capacity;
  3340. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*12*/))+(1);
  3341. }
  3342. /*FI]*/
  3343. /*[IRF3.6put*/{T349* C1=C;
  3344. T0* b1=a1;
  3345. T2 b2=(/*RF2*/(C)->_upper/*12*/);
  3346. ((/*RF2*/(C1)->_storage/*4*/))[b2]=(b1);
  3347. }/*]*/
  3348. }
  3349.  
  3350.  
  3351. void r349with_capacity(T349* C,T2 a1){
  3352. /*[IF*/
  3353. if(((/*RF2*/(C)->_capacity/*8*/))<(a1)){
  3354. (/*SFN*/C->_storage)=((T350)(calloc(a1,sizeof(T0*))));
  3355. (/*SFN*/C->_capacity)=a1;
  3356. }
  3357. /*FI]*/
  3358. (/*SFN*/C->_upper)=-(1);
  3359. }
  3360.  
  3361.  
  3362. void r349make(T349* C,T2 a1){
  3363. /*[IF*/
  3364. if((a1)==(0)){
  3365. (/*SFN*/C->_upper)=-(1);
  3366. }
  3367.  else if(((/*RF2*/(C)->_capacity/*8*/))==(0)){
  3368. (/*SFN*/C->_storage)=((T350)(calloc(a1,sizeof(T0*))));
  3369. (/*SFN*/C->_capacity)=a1;
  3370. (/*SFN*/C->_upper)=(a1)-(1);
  3371. }
  3372.  else if(((/*RF2*/(C)->_capacity/*8*/))<(a1)){
  3373. (/*SFN*/C->_storage)=((T350)(calloc(a1,sizeof(T0*))));
  3374. (/*SFN*/C->_capacity)=a1;
  3375. (/*SFN*/C->_upper)=(a1)-(1);
  3376. }
  3377. else{
  3378. (/*SFN*/C->_upper)=(a1)-(1);
  3379. r349clear_all(C);
  3380. }
  3381. /*FI]*/
  3382. }
  3383.  
  3384.  
  3385. T6 r349fast_has(T349* C,T0* a1){
  3386. T6 R=0;
  3387. R=r349valid_index(C,r349fast_index_of(C,a1));
  3388. return R;
  3389. }
  3390.  
  3391.  
  3392. T2 r349fast_index_of(T349* C,T0* a1){
  3393. T2 R=0;
  3394. R=r350fast_index_of((/*RF2*/(C)->_storage/*4*/),a1,(/*RF2*/(C)->_upper/*12*/));
  3395. return R;
  3396. }
  3397.  
  3398.  
  3399. void r349resize(T349* C,T2 a1){
  3400. T0* _elt_default=NULL;
  3401. T2 _i=0;
  3402. T2 _new_capacity=0;
  3403. /*[IF*/
  3404. if((a1)<=(r349count(C))){
  3405. (/*SFN*/C->_upper)=(a1)-(1);
  3406. }
  3407. else{
  3408. _new_capacity=a1;
  3409. /*[IF*/
  3410. if(((/*RF2*/(C)->_capacity/*8*/))<(_new_capacity)){
  3411. /*[IF*/
  3412. if(((/*RF2*/(C)->_capacity/*8*/))==(0)){
  3413. (/*SFN*/C->_storage)=((T350)(calloc(_new_capacity,sizeof(T0*))));
  3414. }
  3415. else{
  3416. (/*SFN*/C->_storage)=r350realloc((/*RF2*/(C)->_storage/*4*/),(/*RF2*/(C)->_capacity/*8*/),_new_capacity);
  3417. }
  3418. /*FI]*/
  3419. (/*SFN*/C->_capacity)=_new_capacity;
  3420. }
  3421. /*FI]*/
  3422. _new_capacity=(/*RF2*/(C)->_upper/*12*/);
  3423. (/*SFN*/C->_upper)=(a1)-(1);
  3424. _i=(/*RF2*/(C)->_upper/*12*/);
  3425. while (!((_i)==(_new_capacity)))
  3426. {
  3427. /*[IRF3.6put*/{T349* C1=C;
  3428. T0* b1=_elt_default;
  3429. T2 b2=_i;
  3430. ((/*RF2*/(C1)->_storage/*4*/))[b2]=(b1);
  3431. }/*]*/
  3432. _i=(_i)-(1);
  3433. }
  3434. }
  3435. /*FI]*/
  3436. }
  3437.  
  3438.  
  3439. T6 r349valid_index(T349* C,T2 a1){
  3440. T6 R=0;
  3441. R=((0)<=(a1))&&((a1)<=((/*RF2*/(C)->_upper/*12*/)));
  3442. return R;
  3443. }
  3444.  
  3445.  
  3446. void r349clear_all(T349* C){
  3447. T0* _value=NULL;
  3448. /*[IRF3.6set_all_with*/{T349* C1=C;
  3449. T0* b1=_value;
  3450. r350set_all_with((/*RF2*/(C1)->_storage/*4*/),b1,(/*RF2*/(C1)->_upper/*12*/));
  3451. }/*]*/
  3452. }
  3453.  
  3454.  
  3455. T2 r349count(T349* C){
  3456. T2 R=0;
  3457. R=((/*RF2*/(C)->_upper/*12*/))+(1);
  3458. return R;
  3459. }
  3460.  
  3461.  
  3462. T0* r349item(T349* C,T2 a1){
  3463. T0* R=NULL;
  3464. R=((/*RF2*/(C)->_storage/*4*/))[a1];
  3465. return R;
  3466. }
  3467.  
  3468.  
  3469. void r216with_capacity(T216* C,T2 a1){
  3470. /*[IF*/
  3471. if(((/*RF2*/(C)->_capacity/*4*/))<(a1)){
  3472. (/*SFN*/C->_storage)=((T223)(calloc(a1,sizeof(T0*))));
  3473. (/*SFN*/C->_capacity)=a1;
  3474. }
  3475. /*FI]*/
  3476. (/*SFN*/C->_upper)=-(1);
  3477. }
  3478.  
  3479.  
  3480. void r216add_last(T216* C,T0* a1){
  3481. T2 _new_capacity=0;
  3482. /*[IF*/
  3483. if((((/*RF2*/(C)->_upper/*8*/))+(1))<=(((/*RF2*/(C)->_capacity/*4*/))-(1))){
  3484. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*8*/))+(1);
  3485. }
  3486.  else if(((/*RF2*/(C)->_capacity/*4*/))==(0)){
  3487. (/*SFN*/C->_storage)=((T223)(calloc(2,sizeof(T0*))));
  3488. (/*SFN*/C->_capacity)=2;
  3489. (/*SFN*/C->_upper)=0;
  3490. }
  3491. else{
  3492. _new_capacity=(2)*((/*RF2*/(C)->_capacity/*4*/));
  3493. (/*SFN*/C->_storage)=r223realloc((/*RF2*/(C)->_storage/*0*/),(/*RF2*/(C)->_capacity/*4*/),_new_capacity);
  3494. (/*SFN*/C->_capacity)=_new_capacity;
  3495. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*8*/))+(1);
  3496. }
  3497. /*FI]*/
  3498. /*[IRF3.5put*/((/*RF2*/(C)->_storage/*0*/))[(/*RF2*/(C)->_upper/*8*/)]=(a1);
  3499. /*]*/
  3500. }
  3501.  
  3502.  
  3503. void r216copy(T216* C,T0* a1){
  3504. T2 _new_capacity=0;
  3505. T2 _other_upper=0;
  3506. _other_upper=(/*RF2*/(((T216*)a1))->_upper/*8*/);
  3507. /*[IF*/
  3508. if((_other_upper)>=(0)){
  3509. _new_capacity=(_other_upper)+(1);
  3510. /*[IF*/
  3511. if(((/*RF2*/(C)->_capacity/*4*/))<(_new_capacity)){
  3512. (/*SFN*/C->_capacity)=_new_capacity;
  3513. (/*SFN*/C->_storage)=((T223)(calloc(_new_capacity,sizeof(T0*))));
  3514. }
  3515.  else if(((/*RF2*/(C)->_capacity/*4*/))>(0)){
  3516. r223clear_all((/*RF2*/(C)->_storage/*0*/),((/*RF2*/(C)->_capacity/*4*/))-(1));
  3517. }
  3518. /*FI]*/
  3519. r223copy_from((/*RF2*/(C)->_storage/*0*/),(/*RF2*/(((T216*)a1))->_storage/*0*/),_other_upper);
  3520. }
  3521.  else if(((/*RF2*/(C)->_capacity/*4*/))>(0)){
  3522. r223clear_all((/*RF2*/(C)->_storage/*0*/),((/*RF2*/(C)->_capacity/*4*/))-(1));
  3523. }
  3524. /*FI]*/
  3525. (/*SFN*/C->_upper)=_other_upper;
  3526. }
  3527.  
  3528.  
  3529. T0* r216twin(T216* C){
  3530. T0* R=NULL;
  3531. R=malloc(sizeof(*C));
  3532. *((T216*)R)=M216;
  3533. r216copy(((T216*)R),((T0*)C));
  3534. return R;
  3535. }
  3536.  
  3537.  
  3538. void r27add_last(T27* C,T2 a1){
  3539. T2 _new_capacity=0;
  3540. /*[IF*/
  3541. if((((/*RF2*/(C)->_upper/*8*/))+(1))<=(((/*RF2*/(C)->_capacity/*4*/))-(1))){
  3542. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*8*/))+(1);
  3543. }
  3544.  else if(((/*RF2*/(C)->_capacity/*4*/))==(0)){
  3545. (/*SFN*/C->_storage)=((T28)(calloc(2,sizeof(T2))));
  3546. (/*SFN*/C->_capacity)=2;
  3547. (/*SFN*/C->_upper)=0;
  3548. }
  3549. else{
  3550. _new_capacity=(2)*((/*RF2*/(C)->_capacity/*4*/));
  3551. (/*SFN*/C->_storage)=r28realloc((/*RF2*/(C)->_storage/*0*/),(/*RF2*/(C)->_capacity/*4*/),_new_capacity);
  3552. (/*SFN*/C->_capacity)=_new_capacity;
  3553. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*8*/))+(1);
  3554. }
  3555. /*FI]*/
  3556. /*[IRF3.5put*/((/*RF2*/(C)->_storage/*0*/))[(/*RF2*/(C)->_upper/*8*/)]=(a1);
  3557. /*]*/
  3558. }
  3559.  
  3560.  
  3561. void r27make(T27* C,T2 a1){
  3562. /*[IF*/
  3563. if((a1)==(0)){
  3564. (/*SFN*/C->_upper)=-(1);
  3565. }
  3566.  else if(((/*RF2*/(C)->_capacity/*4*/))==(0)){
  3567. (/*SFN*/C->_storage)=((T28)(calloc(a1,sizeof(T2))));
  3568. (/*SFN*/C->_capacity)=a1;
  3569. (/*SFN*/C->_upper)=(a1)-(1);
  3570. }
  3571.  else if(((/*RF2*/(C)->_capacity/*4*/))<(a1)){
  3572. (/*SFN*/C->_storage)=((T28)(calloc(a1,sizeof(T2))));
  3573. (/*SFN*/C->_capacity)=a1;
  3574. (/*SFN*/C->_upper)=(a1)-(1);
  3575. }
  3576. else{
  3577. (/*SFN*/C->_upper)=(a1)-(1);
  3578. /*[IRF3.6clear_all*/{T27* C1=C;
  3579. T2 __value=0;
  3580. /*[IRF3.6set_all_with*/{T27* C2=C1;
  3581. T2 c1=__value;
  3582. r28set_all_with((/*RF2*/(C2)->_storage/*0*/),c1,(/*RF2*/(C2)->_upper/*8*/));
  3583. }/*]*/
  3584. }/*]*/
  3585. }
  3586. /*FI]*/
  3587. }
  3588.  
  3589.  
  3590. void r27resize(T27* C,T2 a1){
  3591. T2 _elt_default=0;
  3592. T2 _i=0;
  3593. T2 _new_capacity=0;
  3594. /*[IF*/
  3595. if((a1)<=(/*(IRF4.6count*/((/*RF2*/(C)->_upper/*8*/))+(1)/*)*/)){
  3596. (/*SFN*/C->_upper)=(a1)-(1);
  3597. }
  3598. else{
  3599. _new_capacity=a1;
  3600. /*[IF*/
  3601. if(((/*RF2*/(C)->_capacity/*4*/))<(_new_capacity)){
  3602. /*[IF*/
  3603. if(((/*RF2*/(C)->_capacity/*4*/))==(0)){
  3604. (/*SFN*/C->_storage)=((T28)(calloc(_new_capacity,sizeof(T2))));
  3605. }
  3606. else{
  3607. (/*SFN*/C->_storage)=r28realloc((/*RF2*/(C)->_storage/*0*/),(/*RF2*/(C)->_capacity/*4*/),_new_capacity);
  3608. }
  3609. /*FI]*/
  3610. (/*SFN*/C->_capacity)=_new_capacity;
  3611. }
  3612. /*FI]*/
  3613. _new_capacity=(/*RF2*/(C)->_upper/*8*/);
  3614. (/*SFN*/C->_upper)=(a1)-(1);
  3615. _i=(/*RF2*/(C)->_upper/*8*/);
  3616. while (!((_i)==(_new_capacity)))
  3617. {
  3618. /*[IRF3.5put*/((/*RF2*/(C)->_storage/*0*/))[_i]=(_elt_default);
  3619. /*]*/
  3620. _i=(_i)-(1);
  3621. }
  3622. }
  3623. /*FI]*/
  3624. }
  3625.  
  3626.  
  3627. void r346with_capacity(T346* C,T2 a1,T2 a2){
  3628. /*[IF*/
  3629. if(((/*RF2*/(C)->_capacity/*8*/))<(a1)){
  3630. (/*SFN*/C->_storage)=((T347)(calloc(a1,sizeof(T0*))));
  3631. (/*SFN*/C->_capacity)=a1;
  3632. }
  3633. /*FI]*/
  3634. (/*SFN*/C->_lower)=a2;
  3635. (/*SFN*/C->_upper)=(a2)-(1);
  3636. }
  3637.  
  3638.  
  3639. void r346add_last(T346* C,T0* a1){
  3640. T2 _new_capacity=0;
  3641. /*[IF*/
  3642. if(((/*RF2*/(C)->_capacity/*8*/))<((r346count(C))+(1))){
  3643. /*[IF*/
  3644. if(((/*RF2*/(C)->_capacity/*8*/))==(0)){
  3645. (/*SFN*/C->_capacity)=16;
  3646. (/*SFN*/C->_storage)=((T347)(calloc((/*RF2*/(C)->_capacity/*8*/),sizeof(T0*))));
  3647. }
  3648. else{
  3649. _new_capacity=(2)*((/*RF2*/(C)->_capacity/*8*/));
  3650. (/*SFN*/C->_storage)=r347realloc((/*RF2*/(C)->_storage/*4*/),(/*RF2*/(C)->_capacity/*8*/),_new_capacity);
  3651. (/*SFN*/C->_capacity)=_new_capacity;
  3652. }
  3653. /*FI]*/
  3654. }
  3655. /*FI]*/
  3656. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*12*/))+(1);
  3657. /*[IRF3.6put*/{T346* C1=C;
  3658. T0* b1=a1;
  3659. T2 b2=(/*RF2*/(C)->_upper/*12*/);
  3660. ((/*RF2*/(C1)->_storage/*4*/))[(b2)-((/*RF2*/(C1)->_lower/*16*/))]=(b1);
  3661. }/*]*/
  3662. }
  3663.  
  3664.  
  3665. void r346make(T346* C,T2 a1,T2 a2){
  3666. T2 _needed=0;
  3667. (/*SFN*/C->_lower)=a1;
  3668. (/*SFN*/C->_upper)=a2;
  3669. _needed=((a2)-(a1))+(1);
  3670. /*[IF*/
  3671. if((_needed)>(0)){
  3672. /*[IF*/
  3673. if(((/*RF2*/(C)->_capacity/*8*/))<(_needed)){
  3674. (/*SFN*/C->_storage)=((T347)(calloc(_needed,sizeof(T0*))));
  3675. (/*SFN*/C->_capacity)=_needed;
  3676. }
  3677. else{
  3678. /*[IRF3.6clear_all*/{T346* C1=C;
  3679. T0* __value=NULL;
  3680. /*[IRF3.6set_all_with*/{T346* C2=C1;
  3681. T0* c1=__value;
  3682. r347set_all_with((/*RF2*/(C2)->_storage/*4*/),c1,((/*RF2*/(C2)->_upper/*12*/))-((/*RF2*/(C2)->_lower/*16*/)));
  3683. }/*]*/
  3684. }/*]*/
  3685. }
  3686. /*FI]*/
  3687. }
  3688. /*FI]*/
  3689. }
  3690.  
  3691.  
  3692. void r346force(T346* C,T0* a1,T2 a2){
  3693. /*[IF*/
  3694. if(((/*RF2*/(C)->_upper/*12*/))<(a2)){
  3695. /*[IF*/
  3696. if((a2)==(((/*RF2*/(C)->_upper/*12*/))+(1))){
  3697. r346add_last(C,a1);
  3698. }
  3699. else{
  3700. r346resize(C,(/*RF2*/(C)->_lower/*16*/),a2);
  3701. /*[IRF3.6put*/{T346* C1=C;
  3702. T0* b1=a1;
  3703. T2 b2=a2;
  3704. ((/*RF2*/(C1)->_storage/*4*/))[(b2)-((/*RF2*/(C1)->_lower/*16*/))]=(b1);
  3705. }/*]*/
  3706. }
  3707. /*FI]*/
  3708. }
  3709.  else if((a2)<((/*RF2*/(C)->_lower/*16*/))){
  3710. r346resize(C,a2,(/*RF2*/(C)->_upper/*12*/));
  3711. /*[IRF3.6put*/{T346* C1=C;
  3712. T0* b1=a1;
  3713. T2 b2=a2;
  3714. ((/*RF2*/(C1)->_storage/*4*/))[(b2)-((/*RF2*/(C1)->_lower/*16*/))]=(b1);
  3715. }/*]*/
  3716. }
  3717. else{
  3718. /*[IRF3.6put*/{T346* C1=C;
  3719. T0* b1=a1;
  3720. T2 b2=a2;
  3721. ((/*RF2*/(C1)->_storage/*4*/))[(b2)-((/*RF2*/(C1)->_lower/*16*/))]=(b1);
  3722. }/*]*/
  3723. }
  3724. /*FI]*/
  3725. }
  3726.  
  3727.  
  3728. void r346swap(T346* C,T2 a1,T2 a2){
  3729. T0* _tmp=NULL;
  3730. _tmp=r346item(C,a1);
  3731. /*[IRF3.6put*/{T346* C1=C;
  3732. T0* b1=r346item(C,a2);
  3733. T2 b2=a1;
  3734. ((/*RF2*/(C1)->_storage/*4*/))[(b2)-((/*RF2*/(C1)->_lower/*16*/))]=(b1);
  3735. }/*]*/
  3736. /*[IRF3.6put*/{T346* C1=C;
  3737. T0* b1=_tmp;
  3738. T2 b2=a2;
  3739. ((/*RF2*/(C1)->_storage/*4*/))[(b2)-((/*RF2*/(C1)->_lower/*16*/))]=(b1);
  3740. }/*]*/
  3741. }
  3742.  
  3743.  
  3744. void r346resize(T346* C,T2 a1,T2 a2){
  3745. T2 _intersize=0;
  3746. T2 _offset=0;
  3747. T2 _needed=0;
  3748. _needed=((a2)-(a1))+(1);
  3749. /*[IF*/
  3750. if((_needed)>(0)){
  3751. /*[IF*/
  3752. if((_needed)>((/*RF2*/(C)->_capacity/*8*/))){
  3753. /*[IF*/
  3754. if(((/*RF2*/(C)->_capacity/*8*/))==(0)){
  3755. (/*SFN*/C->_storage)=((T347)(calloc(_needed,sizeof(T0*))));
  3756. (/*SFN*/C->_capacity)=_needed;
  3757. }
  3758. else{
  3759. (/*SFN*/C->_storage)=r347realloc((/*RF2*/(C)->_storage/*4*/),(/*RF2*/(C)->_capacity/*8*/),_needed);
  3760. (/*SFN*/C->_capacity)=_needed;
  3761. }
  3762. /*FI]*/
  3763. }
  3764. /*FI]*/
  3765. _offset=((/*RF2*/(C)->_lower/*16*/))-(a1);
  3766. _intersize=((r2min(a2,(/*RF2*/(C)->_upper/*12*/)))-(r2max(a1,(/*RF2*/(C)->_lower/*16*/))))+(1);
  3767. /*[IF*/
  3768. if((_intersize)>(0)){
  3769. /*[IF*/
  3770. if((_offset)==(0)){
  3771. /*[IF*/
  3772. if((_intersize)<(_needed)){
  3773. r347clear((/*RF2*/(C)->_storage/*4*/),_intersize,(_needed)-(1));
  3774. }
  3775. /*FI]*/
  3776. }
  3777.  else if((_offset)<(0)){
  3778. r347move((/*RF2*/(C)->_storage/*4*/),-(_offset),((_intersize)-(_offset))-(1),_offset);
  3779. /*[IF*/
  3780. if((_intersize)<(_needed)){
  3781. r347clear((/*RF2*/(C)->_storage/*4*/),_intersize,(_needed)-(1));
  3782. }
  3783. /*FI]*/
  3784. }
  3785. else{
  3786. r347move((/*RF2*/(C)->_storage/*4*/),0,(_intersize)-(1),_offset);
  3787. r347clear((/*RF2*/(C)->_storage/*4*/),0,(_offset)-(1));
  3788. /*[IF*/
  3789. if(((_intersize)+(_offset))<(_needed)){
  3790. r347clear((/*RF2*/(C)->_storage/*4*/),(_intersize)+(_offset),(_needed)-(1));
  3791. }
  3792. /*FI]*/
  3793. }
  3794. /*FI]*/
  3795. }
  3796. else{
  3797. r347clear((/*RF2*/(C)->_storage/*4*/),0,(_needed)-(1));
  3798. }
  3799. /*FI]*/
  3800. }
  3801. /*FI]*/
  3802. (/*SFN*/C->_lower)=a1;
  3803. (/*SFN*/C->_upper)=a2;
  3804. }
  3805.  
  3806.  
  3807. T2 r346count(T346* C){
  3808. T2 R=0;
  3809. R=(((/*RF2*/(C)->_upper/*12*/))-((/*RF2*/(C)->_lower/*16*/)))+(1);
  3810. return R;
  3811. }
  3812.  
  3813.  
  3814. T0* r346item(T346* C,T2 a1){
  3815. T0* R=NULL;
  3816. R=((/*RF2*/(C)->_storage/*4*/))[(a1)-((/*RF2*/(C)->_lower/*16*/))];
  3817. return R;
  3818. }
  3819.  
  3820.  
  3821. void r234with_capacity(T234* C,T2 a1,T2 a2){
  3822. /*[IF*/
  3823. if(((/*RF2*/(C)->_capacity/*4*/))<(a1)){
  3824. (/*SFN*/C->_storage)=((T235)(calloc(a1,sizeof(T0*))));
  3825. (/*SFN*/C->_capacity)=a1;
  3826. }
  3827. /*FI]*/
  3828. (/*SFN*/C->_lower)=a2;
  3829. (/*SFN*/C->_upper)=(a2)-(1);
  3830. }
  3831.  
  3832.  
  3833. void r234add_last(T234* C,T0* a1){
  3834. T2 _new_capacity=0;
  3835. /*[IF*/
  3836. if(((/*RF2*/(C)->_capacity/*4*/))<((r234count(C))+(1))){
  3837. /*[IF*/
  3838. if(((/*RF2*/(C)->_capacity/*4*/))==(0)){
  3839. (/*SFN*/C->_capacity)=16;
  3840. (/*SFN*/C->_storage)=((T235)(calloc((/*RF2*/(C)->_capacity/*4*/),sizeof(T0*))));
  3841. }
  3842. else{
  3843. _new_capacity=(2)*((/*RF2*/(C)->_capacity/*4*/));
  3844. (/*SFN*/C->_storage)=r235realloc((/*RF2*/(C)->_storage/*0*/),(/*RF2*/(C)->_capacity/*4*/),_new_capacity);
  3845. (/*SFN*/C->_capacity)=_new_capacity;
  3846. }
  3847. /*FI]*/
  3848. }
  3849. /*FI]*/
  3850. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*8*/))+(1);
  3851. /*[IRF3.6put*/{T234* C1=C;
  3852. T0* b1=a1;
  3853. T2 b2=(/*RF2*/(C)->_upper/*8*/);
  3854. ((/*RF2*/(C1)->_storage/*0*/))[(b2)-((/*RF2*/(C1)->_lower/*12*/))]=(b1);
  3855. }/*]*/
  3856. }
  3857.  
  3858.  
  3859. void r234copy(T234* C,T0* a1){
  3860. T2 _needed_capacity=0;
  3861. (/*SFN*/C->_lower)=(/*RF2*/(((T234*)a1))->_lower/*12*/);
  3862. (/*SFN*/C->_upper)=(/*RF2*/(((T234*)a1))->_upper/*8*/);
  3863. _needed_capacity=(((/*RF2*/(C)->_upper/*8*/))-((/*RF2*/(C)->_lower/*12*/)))+(1);
  3864. /*[IF*/
  3865. if(((/*RF2*/(C)->_capacity/*4*/))<(_needed_capacity)){
  3866. (/*SFN*/C->_capacity)=_needed_capacity;
  3867. (/*SFN*/C->_storage)=((T235)(calloc((/*RF2*/(C)->_capacity/*4*/),sizeof(T0*))));
  3868. }
  3869. /*FI]*/
  3870. /*[IF*/
  3871. if((_needed_capacity)>(0)){
  3872. r235copy_from((/*RF2*/(C)->_storage/*0*/),(/*RF2*/(((T234*)a1))->_storage/*0*/),(_needed_capacity)-(1));
  3873. }
  3874. /*FI]*/
  3875. }
  3876.  
  3877.  
  3878. T0* r234twin(T234* C){
  3879. T0* R=NULL;
  3880. R=malloc(sizeof(*C));
  3881. *((T234*)R)=M234;
  3882. r234copy(((T234*)R),((T0*)C));
  3883. return R;
  3884. }
  3885.  
  3886.  
  3887. T2 r234count(T234* C){
  3888. T2 R=0;
  3889. R=(((/*RF2*/(C)->_upper/*8*/))-((/*RF2*/(C)->_lower/*12*/)))+(1);
  3890. return R;
  3891. }
  3892.  
  3893.  
  3894. T0* r234item(T234* C,T2 a1){
  3895. T0* R=NULL;
  3896. R=((/*RF2*/(C)->_storage/*0*/))[(a1)-((/*RF2*/(C)->_lower/*12*/))];
  3897. return R;
  3898. }
  3899.  
  3900.  
  3901. void r227with_capacity(T227* C,T2 a1,T2 a2){
  3902. /*[IF*/
  3903. if(((/*RF2*/(C)->_capacity/*4*/))<(a1)){
  3904. (/*SFN*/C->_storage)=((T228)(calloc(a1,sizeof(T0*))));
  3905. (/*SFN*/C->_capacity)=a1;
  3906. }
  3907. /*FI]*/
  3908. (/*SFN*/C->_lower)=a2;
  3909. (/*SFN*/C->_upper)=(a2)-(1);
  3910. }
  3911.  
  3912.  
  3913. void r227add_last(T227* C,T0* a1){
  3914. T2 _new_capacity=0;
  3915. /*[IF*/
  3916. if(((/*RF2*/(C)->_capacity/*4*/))<((r227count(C))+(1))){
  3917. /*[IF*/
  3918. if(((/*RF2*/(C)->_capacity/*4*/))==(0)){
  3919. (/*SFN*/C->_capacity)=16;
  3920. (/*SFN*/C->_storage)=((T228)(calloc((/*RF2*/(C)->_capacity/*4*/),sizeof(T0*))));
  3921. }
  3922. else{
  3923. _new_capacity=(2)*((/*RF2*/(C)->_capacity/*4*/));
  3924. (/*SFN*/C->_storage)=r228realloc((/*RF2*/(C)->_storage/*0*/),(/*RF2*/(C)->_capacity/*4*/),_new_capacity);
  3925. (/*SFN*/C->_capacity)=_new_capacity;
  3926. }
  3927. /*FI]*/
  3928. }
  3929. /*FI]*/
  3930. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*8*/))+(1);
  3931. /*[IRF3.6put*/{T227* C1=C;
  3932. T0* b1=a1;
  3933. T2 b2=(/*RF2*/(C)->_upper/*8*/);
  3934. ((/*RF2*/(C1)->_storage/*0*/))[(b2)-((/*RF2*/(C1)->_lower/*12*/))]=(b1);
  3935. }/*]*/
  3936. }
  3937.  
  3938.  
  3939. T2 r227count(T227* C){
  3940. T2 R=0;
  3941. R=(((/*RF2*/(C)->_upper/*8*/))-((/*RF2*/(C)->_lower/*12*/)))+(1);
  3942. return R;
  3943. }
  3944.  
  3945.  
  3946. T0* r227item(T227* C,T2 a1){
  3947. T0* R=NULL;
  3948. R=((/*RF2*/(C)->_storage/*0*/))[(a1)-((/*RF2*/(C)->_lower/*12*/))];
  3949. return R;
  3950. }
  3951.  
  3952.  
  3953. void r59with_capacity(T59* C,T2 a1,T2 a2){
  3954. /*[IF*/
  3955. if(((/*RF2*/(C)->_capacity/*4*/))<(a1)){
  3956. (/*SFN*/C->_storage)=((T60)(calloc(a1,sizeof(T0*))));
  3957. (/*SFN*/C->_capacity)=a1;
  3958. }
  3959. /*FI]*/
  3960. (/*SFN*/C->_lower)=a2;
  3961. (/*SFN*/C->_upper)=(a2)-(1);
  3962. }
  3963.  
  3964.  
  3965. void r59add_last(T59* C,T0* a1){
  3966. T2 _new_capacity=0;
  3967. /*[IF*/
  3968. if(((/*RF2*/(C)->_capacity/*4*/))<((r59count(C))+(1))){
  3969. /*[IF*/
  3970. if(((/*RF2*/(C)->_capacity/*4*/))==(0)){
  3971. (/*SFN*/C->_capacity)=16;
  3972. (/*SFN*/C->_storage)=((T60)(calloc((/*RF2*/(C)->_capacity/*4*/),sizeof(T0*))));
  3973. }
  3974. else{
  3975. _new_capacity=(2)*((/*RF2*/(C)->_capacity/*4*/));
  3976. (/*SFN*/C->_storage)=r60realloc((/*RF2*/(C)->_storage/*0*/),(/*RF2*/(C)->_capacity/*4*/),_new_capacity);
  3977. (/*SFN*/C->_capacity)=_new_capacity;
  3978. }
  3979. /*FI]*/
  3980. }
  3981. /*FI]*/
  3982. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*8*/))+(1);
  3983. /*[IRF3.6put*/{T59* C1=C;
  3984. T0* b1=a1;
  3985. T2 b2=(/*RF2*/(C)->_upper/*8*/);
  3986. ((/*RF2*/(C1)->_storage/*0*/))[(b2)-((/*RF2*/(C1)->_lower/*12*/))]=(b1);
  3987. }/*]*/
  3988. }
  3989.  
  3990.  
  3991. T2 r59count(T59* C){
  3992. T2 R=0;
  3993. R=(((/*RF2*/(C)->_upper/*8*/))-((/*RF2*/(C)->_lower/*12*/)))+(1);
  3994. return R;
  3995. }
  3996.  
  3997.  
  3998. T0* r59item(T59* C,T2 a1){
  3999. T0* R=NULL;
  4000. R=((/*RF2*/(C)->_storage/*0*/))[(a1)-((/*RF2*/(C)->_lower/*12*/))];
  4001. return R;
  4002. }
  4003.  
  4004.  
  4005. void r44with_capacity(T44* C,T2 a1,T2 a2){
  4006. /*[IF*/
  4007. if(((/*RF2*/(C)->_capacity/*8*/))<(a1)){
  4008. (/*SFN*/C->_storage)=((T32)(calloc(a1,sizeof(T0*))));
  4009. (/*SFN*/C->_capacity)=a1;
  4010. }
  4011. /*FI]*/
  4012. (/*SFN*/C->_lower)=a2;
  4013. (/*SFN*/C->_upper)=(a2)-(1);
  4014. }
  4015.  
  4016.  
  4017. void r44add_last(T44* C,T0* a1){
  4018. T2 _new_capacity=0;
  4019. /*[IF*/
  4020. if(((/*RF2*/(C)->_capacity/*8*/))<((r44count(C))+(1))){
  4021. /*[IF*/
  4022. if(((/*RF2*/(C)->_capacity/*8*/))==(0)){
  4023. (/*SFN*/C->_capacity)=16;
  4024. (/*SFN*/C->_storage)=((T32)(calloc((/*RF2*/(C)->_capacity/*8*/),sizeof(T0*))));
  4025. }
  4026. else{
  4027. _new_capacity=(2)*((/*RF2*/(C)->_capacity/*8*/));
  4028. (/*SFN*/C->_storage)=r32realloc((/*RF2*/(C)->_storage/*4*/),(/*RF2*/(C)->_capacity/*8*/),_new_capacity);
  4029. (/*SFN*/C->_capacity)=_new_capacity;
  4030. }
  4031. /*FI]*/
  4032. }
  4033. /*FI]*/
  4034. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*12*/))+(1);
  4035. /*[IRF3.6put*/{T44* C1=C;
  4036. T0* b1=a1;
  4037. T2 b2=(/*RF2*/(C)->_upper/*12*/);
  4038. ((/*RF2*/(C1)->_storage/*4*/))[(b2)-((/*RF2*/(C1)->_lower/*16*/))]=(b1);
  4039. }/*]*/
  4040. }
  4041.  
  4042.  
  4043. void r44clear(T44* C){
  4044. (/*SFN*/C->_upper)=((/*RF2*/(C)->_lower/*16*/))-(1);
  4045. }
  4046.  
  4047.  
  4048. T6 r44is_empty(T44* C){
  4049. T6 R=0;
  4050. R=((/*RF2*/(C)->_upper/*12*/))<((/*RF2*/(C)->_lower/*16*/));
  4051. return R;
  4052. }
  4053.  
  4054.  
  4055. T6 r44fast_has(T44* C,T0* a1){
  4056. T6 R=0;
  4057. R=r44valid_index(C,r44fast_index_of(C,a1));
  4058. return R;
  4059. }
  4060.  
  4061.  
  4062. void r44copy(T44* C,T0* a1){
  4063. T2 _needed_capacity=0;
  4064. (/*SFN*/C->_lower)=(/*RF2*/(((T44*)a1))->_lower/*16*/);
  4065. (/*SFN*/C->_upper)=(/*RF2*/(((T44*)a1))->_upper/*12*/);
  4066. _needed_capacity=(((/*RF2*/(C)->_upper/*12*/))-((/*RF2*/(C)->_lower/*16*/)))+(1);
  4067. /*[IF*/
  4068. if(((/*RF2*/(C)->_capacity/*8*/))<(_needed_capacity)){
  4069. (/*SFN*/C->_capacity)=_needed_capacity;
  4070. (/*SFN*/C->_storage)=((T32)(calloc((/*RF2*/(C)->_capacity/*8*/),sizeof(T0*))));
  4071. }
  4072. /*FI]*/
  4073. /*[IF*/
  4074. if((_needed_capacity)>(0)){
  4075. r32copy_from((/*RF2*/(C)->_storage/*4*/),(/*RF2*/(((T44*)a1))->_storage/*4*/),(_needed_capacity)-(1));
  4076. }
  4077. /*FI]*/
  4078. }
  4079.  
  4080.  
  4081. T2 r44fast_index_of(T44* C,T0* a1){
  4082. T2 R=0;
  4083. R=((/*RF2*/(C)->_lower/*16*/))+(r32fast_index_of((/*RF2*/(C)->_storage/*4*/),a1,((/*RF2*/(C)->_upper/*12*/))-((/*RF2*/(C)->_lower/*16*/))));
  4084. return R;
  4085. }
  4086.  
  4087.  
  4088. T2 r44index_of(T44* C,T0* a1){
  4089. T2 R=0;
  4090. R=((/*RF2*/(C)->_lower/*16*/))+(r32index_of((/*RF2*/(C)->_storage/*4*/),a1,((/*RF2*/(C)->_upper/*12*/))-((/*RF2*/(C)->_lower/*16*/))));
  4091. return R;
  4092. }
  4093.  
  4094.  
  4095. T0* r44twin(T44* C){
  4096. T0* R=NULL;
  4097. R=malloc(sizeof(*C));
  4098. *((T44*)R)=M44;
  4099. r44copy(((T44*)R),((T0*)C));
  4100. return R;
  4101. }
  4102.  
  4103.  
  4104. T6 r44valid_index(T44* C,T2 a1){
  4105. T6 R=0;
  4106. R=(((/*RF2*/(C)->_lower/*16*/))<=(a1))&&((a1)<=((/*RF2*/(C)->_upper/*12*/)));
  4107. return R;
  4108. }
  4109.  
  4110.  
  4111. T2 r44count(T44* C){
  4112. T2 R=0;
  4113. R=(((/*RF2*/(C)->_upper/*12*/))-((/*RF2*/(C)->_lower/*16*/)))+(1);
  4114. return R;
  4115. }
  4116.  
  4117.  
  4118. T0* r44item(T44* C,T2 a1){
  4119. T0* R=NULL;
  4120. R=((/*RF2*/(C)->_storage/*4*/))[(a1)-((/*RF2*/(C)->_lower/*16*/))];
  4121. return R;
  4122. }
  4123.  
  4124.  
  4125. void r370add_last(T370* C,T0* a1){
  4126. T2 _new_capacity=0;
  4127. /*[IF*/
  4128. if((((/*RF2*/(C)->_upper/*12*/))+(1))<=(((/*RF2*/(C)->_capacity/*8*/))-(1))){
  4129. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*12*/))+(1);
  4130. }
  4131.  else if(((/*RF2*/(C)->_capacity/*8*/))==(0)){
  4132. (/*SFN*/C->_storage)=((T371)(calloc(2,sizeof(T0*))));
  4133. (/*SFN*/C->_capacity)=2;
  4134. (/*SFN*/C->_upper)=0;
  4135. }
  4136. else{
  4137. _new_capacity=(2)*((/*RF2*/(C)->_capacity/*8*/));
  4138. (/*SFN*/C->_storage)=r371realloc((/*RF2*/(C)->_storage/*4*/),(/*RF2*/(C)->_capacity/*8*/),_new_capacity);
  4139. (/*SFN*/C->_capacity)=_new_capacity;
  4140. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*12*/))+(1);
  4141. }
  4142. /*FI]*/
  4143. /*[IRF3.5put*/((/*RF2*/(C)->_storage/*4*/))[(/*RF2*/(C)->_upper/*12*/)]=(a1);
  4144. /*]*/
  4145. }
  4146.  
  4147.  
  4148. void r370with_capacity(T370* C,T2 a1){
  4149. /*[IF*/
  4150. if(((/*RF2*/(C)->_capacity/*8*/))<(a1)){
  4151. (/*SFN*/C->_storage)=((T371)(calloc(a1,sizeof(T0*))));
  4152. (/*SFN*/C->_capacity)=a1;
  4153. }
  4154. /*FI]*/
  4155. (/*SFN*/C->_upper)=-(1);
  4156. }
  4157.  
  4158.  
  4159. void r370make(T370* C,T2 a1){
  4160. /*[IF*/
  4161. if((a1)==(0)){
  4162. (/*SFN*/C->_upper)=-(1);
  4163. }
  4164.  else if(((/*RF2*/(C)->_capacity/*8*/))==(0)){
  4165. (/*SFN*/C->_storage)=((T371)(calloc(a1,sizeof(T0*))));
  4166. (/*SFN*/C->_capacity)=a1;
  4167. (/*SFN*/C->_upper)=(a1)-(1);
  4168. }
  4169.  else if(((/*RF2*/(C)->_capacity/*8*/))<(a1)){
  4170. (/*SFN*/C->_storage)=((T371)(calloc(a1,sizeof(T0*))));
  4171. (/*SFN*/C->_capacity)=a1;
  4172. (/*SFN*/C->_upper)=(a1)-(1);
  4173. }
  4174. else{
  4175. (/*SFN*/C->_upper)=(a1)-(1);
  4176. /*[IRF3.6clear_all*/{T370* C1=C;
  4177. T0* __value=NULL;
  4178. /*[IRF3.6set_all_with*/{T370* C2=C1;
  4179. T0* c1=__value;
  4180. r371set_all_with((/*RF2*/(C2)->_storage/*4*/),c1,(/*RF2*/(C2)->_upper/*12*/));
  4181. }/*]*/
  4182. }/*]*/
  4183. }
  4184. /*FI]*/
  4185. }
  4186.  
  4187.  
  4188. void r370copy(T370* C,T0* a1){
  4189. T2 _new_capacity=0;
  4190. T2 _other_upper=0;
  4191. _other_upper=(/*RF2*/(((T370*)a1))->_upper/*12*/);
  4192. /*[IF*/
  4193. if((_other_upper)>=(0)){
  4194. _new_capacity=(_other_upper)+(1);
  4195. /*[IF*/
  4196. if(((/*RF2*/(C)->_capacity/*8*/))<(_new_capacity)){
  4197. (/*SFN*/C->_capacity)=_new_capacity;
  4198. (/*SFN*/C->_storage)=((T371)(calloc(_new_capacity,sizeof(T0*))));
  4199. }
  4200.  else if(((/*RF2*/(C)->_capacity/*8*/))>(0)){
  4201. r371clear_all((/*RF2*/(C)->_storage/*4*/),((/*RF2*/(C)->_capacity/*8*/))-(1));
  4202. }
  4203. /*FI]*/
  4204. r371copy_from((/*RF2*/(C)->_storage/*4*/),(/*RF2*/(((T370*)a1))->_storage/*4*/),_other_upper);
  4205. }
  4206.  else if(((/*RF2*/(C)->_capacity/*8*/))>(0)){
  4207. r371clear_all((/*RF2*/(C)->_storage/*4*/),((/*RF2*/(C)->_capacity/*8*/))-(1));
  4208. }
  4209. /*FI]*/
  4210. (/*SFN*/C->_upper)=_other_upper;
  4211. }
  4212.  
  4213.  
  4214. void r370resize(T370* C,T2 a1){
  4215. T0* _elt_default=NULL;
  4216. T2 _i=0;
  4217. T2 _new_capacity=0;
  4218. /*[IF*/
  4219. if((a1)<=(/*(IRF4.6count*/((/*RF2*/(C)->_upper/*12*/))+(1)/*)*/)){
  4220. (/*SFN*/C->_upper)=(a1)-(1);
  4221. }
  4222. else{
  4223. _new_capacity=a1;
  4224. /*[IF*/
  4225. if(((/*RF2*/(C)->_capacity/*8*/))<(_new_capacity)){
  4226. /*[IF*/
  4227. if(((/*RF2*/(C)->_capacity/*8*/))==(0)){
  4228. (/*SFN*/C->_storage)=((T371)(calloc(_new_capacity,sizeof(T0*))));
  4229. }
  4230. else{
  4231. (/*SFN*/C->_storage)=r371realloc((/*RF2*/(C)->_storage/*4*/),(/*RF2*/(C)->_capacity/*8*/),_new_capacity);
  4232. }
  4233. /*FI]*/
  4234. (/*SFN*/C->_capacity)=_new_capacity;
  4235. }
  4236. /*FI]*/
  4237. _new_capacity=(/*RF2*/(C)->_upper/*12*/);
  4238. (/*SFN*/C->_upper)=(a1)-(1);
  4239. _i=(/*RF2*/(C)->_upper/*12*/);
  4240. while (!((_i)==(_new_capacity)))
  4241. {
  4242. /*[IRF3.5put*/((/*RF2*/(C)->_storage/*4*/))[_i]=(_elt_default);
  4243. /*]*/
  4244. _i=(_i)-(1);
  4245. }
  4246. }
  4247. /*FI]*/
  4248. }
  4249.  
  4250.  
  4251. T0* r370twin(T370* C){
  4252. T0* R=NULL;
  4253. R=malloc(sizeof(*C));
  4254. *((T370*)R)=M370;
  4255. r370copy(((T370*)R),((T0*)C));
  4256. return R;
  4257. }
  4258.  
  4259.  
  4260. void r195with_capacity(T195* C,T2 a1){
  4261. /*[IF*/
  4262. if(((/*RF2*/(C)->_capacity/*4*/))<(a1)){
  4263. (/*SFN*/C->_storage)=((T196)(calloc(a1,sizeof(T0*))));
  4264. (/*SFN*/C->_capacity)=a1;
  4265. }
  4266. /*FI]*/
  4267. (/*SFN*/C->_upper)=-(1);
  4268. }
  4269.  
  4270.  
  4271. void r195add_last(T195* C,T0* a1){
  4272. T2 _new_capacity=0;
  4273. /*[IF*/
  4274. if((((/*RF2*/(C)->_upper/*8*/))+(1))<=(((/*RF2*/(C)->_capacity/*4*/))-(1))){
  4275. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*8*/))+(1);
  4276. }
  4277.  else if(((/*RF2*/(C)->_capacity/*4*/))==(0)){
  4278. (/*SFN*/C->_storage)=((T196)(calloc(2,sizeof(T0*))));
  4279. (/*SFN*/C->_capacity)=2;
  4280. (/*SFN*/C->_upper)=0;
  4281. }
  4282. else{
  4283. _new_capacity=(2)*((/*RF2*/(C)->_capacity/*4*/));
  4284. (/*SFN*/C->_storage)=r196realloc((/*RF2*/(C)->_storage/*0*/),(/*RF2*/(C)->_capacity/*4*/),_new_capacity);
  4285. (/*SFN*/C->_capacity)=_new_capacity;
  4286. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*8*/))+(1);
  4287. }
  4288. /*FI]*/
  4289. /*[IRF3.5put*/((/*RF2*/(C)->_storage/*0*/))[(/*RF2*/(C)->_upper/*8*/)]=(a1);
  4290. /*]*/
  4291. }
  4292.  
  4293.  
  4294. void r141with_capacity(T141* C,T2 a1){
  4295. /*[IF*/
  4296. if(((/*RF2*/(C)->_capacity/*8*/))<(a1)){
  4297. (/*SFN*/C->_storage)=((T110)(calloc(a1,sizeof(T0*))));
  4298. (/*SFN*/C->_capacity)=a1;
  4299. }
  4300. /*FI]*/
  4301. (/*SFN*/C->_upper)=-(1);
  4302. }
  4303.  
  4304.  
  4305. void r141add_last(T141* C,T0* a1){
  4306. T2 _new_capacity=0;
  4307. /*[IF*/
  4308. if((((/*RF2*/(C)->_upper/*12*/))+(1))<=(((/*RF2*/(C)->_capacity/*8*/))-(1))){
  4309. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*12*/))+(1);
  4310. }
  4311.  else if(((/*RF2*/(C)->_capacity/*8*/))==(0)){
  4312. (/*SFN*/C->_storage)=((T110)(calloc(2,sizeof(T0*))));
  4313. (/*SFN*/C->_capacity)=2;
  4314. (/*SFN*/C->_upper)=0;
  4315. }
  4316. else{
  4317. _new_capacity=(2)*((/*RF2*/(C)->_capacity/*8*/));
  4318. (/*SFN*/C->_storage)=r110realloc((/*RF2*/(C)->_storage/*4*/),(/*RF2*/(C)->_capacity/*8*/),_new_capacity);
  4319. (/*SFN*/C->_capacity)=_new_capacity;
  4320. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*12*/))+(1);
  4321. }
  4322. /*FI]*/
  4323. /*[IRF3.6put*/{T141* C1=C;
  4324. T0* b1=a1;
  4325. T2 b2=(/*RF2*/(C)->_upper/*12*/);
  4326. ((/*RF2*/(C1)->_storage/*4*/))[b2]=(b1);
  4327. }/*]*/
  4328. }
  4329.  
  4330.  
  4331. void r141make(T141* C,T2 a1){
  4332. /*[IF*/
  4333. if((a1)==(0)){
  4334. (/*SFN*/C->_upper)=-(1);
  4335. }
  4336.  else if(((/*RF2*/(C)->_capacity/*8*/))==(0)){
  4337. (/*SFN*/C->_storage)=((T110)(calloc(a1,sizeof(T0*))));
  4338. (/*SFN*/C->_capacity)=a1;
  4339. (/*SFN*/C->_upper)=(a1)-(1);
  4340. }
  4341.  else if(((/*RF2*/(C)->_capacity/*8*/))<(a1)){
  4342. (/*SFN*/C->_storage)=((T110)(calloc(a1,sizeof(T0*))));
  4343. (/*SFN*/C->_capacity)=a1;
  4344. (/*SFN*/C->_upper)=(a1)-(1);
  4345. }
  4346. else{
  4347. (/*SFN*/C->_upper)=(a1)-(1);
  4348. r141clear_all(C);
  4349. }
  4350. /*FI]*/
  4351. }
  4352.  
  4353.  
  4354. void r141copy(T141* C,T0* a1){
  4355. T2 _new_capacity=0;
  4356. T2 _other_upper=0;
  4357. _other_upper=/*SSWARF2*//*X141upper*/(/*RF2*/(((T141*)a1))->_upper/*12*/);
  4358. /*[IF*/
  4359. if((_other_upper)>=(0)){
  4360. _new_capacity=(_other_upper)+(1);
  4361. /*[IF*/
  4362. if(((/*RF2*/(C)->_capacity/*8*/))<(_new_capacity)){
  4363. (/*SFN*/C->_capacity)=_new_capacity;
  4364. (/*SFN*/C->_storage)=((T110)(calloc(_new_capacity,sizeof(T0*))));
  4365. }
  4366.  else if(((/*RF2*/(C)->_capacity/*8*/))>(0)){
  4367. r110clear_all((/*RF2*/(C)->_storage/*4*/),((/*RF2*/(C)->_capacity/*8*/))-(1));
  4368. }
  4369. /*FI]*/
  4370. r110copy_from((/*RF2*/(C)->_storage/*4*/),/*SSWARF2*//*X141storage*/((T110)((/*RF2*/(((T141*)a1))->_storage/*4*/))),_other_upper);
  4371. }
  4372.  else if(((/*RF2*/(C)->_capacity/*8*/))>(0)){
  4373. r110clear_all((/*RF2*/(C)->_storage/*4*/),((/*RF2*/(C)->_capacity/*8*/))-(1));
  4374. }
  4375. /*FI]*/
  4376. (/*SFN*/C->_upper)=_other_upper;
  4377. }
  4378.  
  4379.  
  4380. void r141resize(T141* C,T2 a1){
  4381. T0* _elt_default=NULL;
  4382. T2 _i=0;
  4383. T2 _new_capacity=0;
  4384. /*[IF*/
  4385. if((a1)<=(r141count(C))){
  4386. (/*SFN*/C->_upper)=(a1)-(1);
  4387. }
  4388. else{
  4389. _new_capacity=a1;
  4390. /*[IF*/
  4391. if(((/*RF2*/(C)->_capacity/*8*/))<(_new_capacity)){
  4392. /*[IF*/
  4393. if(((/*RF2*/(C)->_capacity/*8*/))==(0)){
  4394. (/*SFN*/C->_storage)=((T110)(calloc(_new_capacity,sizeof(T0*))));
  4395. }
  4396. else{
  4397. (/*SFN*/C->_storage)=r110realloc((/*RF2*/(C)->_storage/*4*/),(/*RF2*/(C)->_capacity/*8*/),_new_capacity);
  4398. }
  4399. /*FI]*/
  4400. (/*SFN*/C->_capacity)=_new_capacity;
  4401. }
  4402. /*FI]*/
  4403. _new_capacity=(/*RF2*/(C)->_upper/*12*/);
  4404. (/*SFN*/C->_upper)=(a1)-(1);
  4405. _i=(/*RF2*/(C)->_upper/*12*/);
  4406. while (!((_i)==(_new_capacity)))
  4407. {
  4408. /*[IRF3.6put*/{T141* C1=C;
  4409. T0* b1=_elt_default;
  4410. T2 b2=_i;
  4411. ((/*RF2*/(C1)->_storage/*4*/))[b2]=(b1);
  4412. }/*]*/
  4413. _i=(_i)-(1);
  4414. }
  4415. }
  4416. /*FI]*/
  4417. }
  4418.  
  4419.  
  4420. T0* r141twin(T141* C){
  4421. T0* R=NULL;
  4422. R=malloc(sizeof(*C));
  4423. *((T141*)R)=M141;
  4424. r141copy(((T141*)R),((T0*)C));
  4425. return R;
  4426. }
  4427.  
  4428.  
  4429. void r141clear_all(T141* C){
  4430. T0* _value=NULL;
  4431. /*[IRF3.6set_all_with*/{T141* C1=C;
  4432. T0* b1=_value;
  4433. r110set_all_with((/*RF2*/(C1)->_storage/*4*/),b1,(/*RF2*/(C1)->_upper/*12*/));
  4434. }/*]*/
  4435. }
  4436.  
  4437.  
  4438. T2 r141count(T141* C){
  4439. T2 R=0;
  4440. R=((/*RF2*/(C)->_upper/*12*/))+(1);
  4441. return R;
  4442. }
  4443.  
  4444.  
  4445. T0* r141item(T141* C,T2 a1){
  4446. T0* R=NULL;
  4447. R=((/*RF2*/(C)->_storage/*4*/))[a1];
  4448. return R;
  4449. }
  4450.  
  4451.  
  4452. void r64add_last(T64* C,T0* a1){
  4453. T2 _new_capacity=0;
  4454. /*[IF*/
  4455. if((((/*RF2*/(C)->_upper/*8*/))+(1))<=(((/*RF2*/(C)->_capacity/*4*/))-(1))){
  4456. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*8*/))+(1);
  4457. }
  4458.  else if(((/*RF2*/(C)->_capacity/*4*/))==(0)){
  4459. (/*SFN*/C->_storage)=((T65)(calloc(2,sizeof(T0*))));
  4460. (/*SFN*/C->_capacity)=2;
  4461. (/*SFN*/C->_upper)=0;
  4462. }
  4463. else{
  4464. _new_capacity=(2)*((/*RF2*/(C)->_capacity/*4*/));
  4465. (/*SFN*/C->_storage)=r65realloc((/*RF2*/(C)->_storage/*0*/),(/*RF2*/(C)->_capacity/*4*/),_new_capacity);
  4466. (/*SFN*/C->_capacity)=_new_capacity;
  4467. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*8*/))+(1);
  4468. }
  4469. /*FI]*/
  4470. /*[IRF3.5put*/((/*RF2*/(C)->_storage/*0*/))[(/*RF2*/(C)->_upper/*8*/)]=(a1);
  4471. /*]*/
  4472. }
  4473.  
  4474.  
  4475. void r64with_capacity(T64* C,T2 a1){
  4476. /*[IF*/
  4477. if(((/*RF2*/(C)->_capacity/*4*/))<(a1)){
  4478. (/*SFN*/C->_storage)=((T65)(calloc(a1,sizeof(T0*))));
  4479. (/*SFN*/C->_capacity)=a1;
  4480. }
  4481. /*FI]*/
  4482. (/*SFN*/C->_upper)=-(1);
  4483. }
  4484.  
  4485.  
  4486. void r64make(T64* C,T2 a1){
  4487. /*[IF*/
  4488. if((a1)==(0)){
  4489. (/*SFN*/C->_upper)=-(1);
  4490. }
  4491.  else if(((/*RF2*/(C)->_capacity/*4*/))==(0)){
  4492. (/*SFN*/C->_storage)=((T65)(calloc(a1,sizeof(T0*))));
  4493. (/*SFN*/C->_capacity)=a1;
  4494. (/*SFN*/C->_upper)=(a1)-(1);
  4495. }
  4496.  else if(((/*RF2*/(C)->_capacity/*4*/))<(a1)){
  4497. (/*SFN*/C->_storage)=((T65)(calloc(a1,sizeof(T0*))));
  4498. (/*SFN*/C->_capacity)=a1;
  4499. (/*SFN*/C->_upper)=(a1)-(1);
  4500. }
  4501. else{
  4502. (/*SFN*/C->_upper)=(a1)-(1);
  4503. /*[IRF3.6clear_all*/{T64* C1=C;
  4504. T0* __value=NULL;
  4505. /*[IRF3.6set_all_with*/{T64* C2=C1;
  4506. T0* c1=__value;
  4507. r65set_all_with((/*RF2*/(C2)->_storage/*0*/),c1,(/*RF2*/(C2)->_upper/*8*/));
  4508. }/*]*/
  4509. }/*]*/
  4510. }
  4511. /*FI]*/
  4512. }
  4513.  
  4514.  
  4515. T6 r64fast_has(T64* C,T0* a1){
  4516. T6 R=0;
  4517. R=r64valid_index(C,r64fast_index_of(C,a1));
  4518. return R;
  4519. }
  4520.  
  4521.  
  4522. T2 r64fast_index_of(T64* C,T0* a1){
  4523. T2 R=0;
  4524. R=r65fast_index_of((/*RF2*/(C)->_storage/*0*/),a1,(/*RF2*/(C)->_upper/*8*/));
  4525. return R;
  4526. }
  4527.  
  4528.  
  4529. void r64resize(T64* C,T2 a1){
  4530. T0* _elt_default=NULL;
  4531. T2 _i=0;
  4532. T2 _new_capacity=0;
  4533. /*[IF*/
  4534. if((a1)<=(/*(IRF4.6count*/((/*RF2*/(C)->_upper/*8*/))+(1)/*)*/)){
  4535. (/*SFN*/C->_upper)=(a1)-(1);
  4536. }
  4537. else{
  4538. _new_capacity=a1;
  4539. /*[IF*/
  4540. if(((/*RF2*/(C)->_capacity/*4*/))<(_new_capacity)){
  4541. /*[IF*/
  4542. if(((/*RF2*/(C)->_capacity/*4*/))==(0)){
  4543. (/*SFN*/C->_storage)=((T65)(calloc(_new_capacity,sizeof(T0*))));
  4544. }
  4545. else{
  4546. (/*SFN*/C->_storage)=r65realloc((/*RF2*/(C)->_storage/*0*/),(/*RF2*/(C)->_capacity/*4*/),_new_capacity);
  4547. }
  4548. /*FI]*/
  4549. (/*SFN*/C->_capacity)=_new_capacity;
  4550. }
  4551. /*FI]*/
  4552. _new_capacity=(/*RF2*/(C)->_upper/*8*/);
  4553. (/*SFN*/C->_upper)=(a1)-(1);
  4554. _i=(/*RF2*/(C)->_upper/*8*/);
  4555. while (!((_i)==(_new_capacity)))
  4556. {
  4557. /*[IRF3.5put*/((/*RF2*/(C)->_storage/*0*/))[_i]=(_elt_default);
  4558. /*]*/
  4559. _i=(_i)-(1);
  4560. }
  4561. }
  4562. /*FI]*/
  4563. }
  4564.  
  4565.  
  4566. T6 r64valid_index(T64* C,T2 a1){
  4567. T6 R=0;
  4568. R=((0)<=(a1))&&((a1)<=((/*RF2*/(C)->_upper/*8*/)));
  4569. return R;
  4570. }
  4571.  
  4572.  
  4573. void r343add_last(T343* C,T0* a1){
  4574. T2 _new_capacity=0;
  4575. /*[IF*/
  4576. if((((/*RF2*/(C)->_upper/*8*/))+(1))<=(((/*RF2*/(C)->_capacity/*4*/))-(1))){
  4577. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*8*/))+(1);
  4578. }
  4579.  else if(((/*RF2*/(C)->_capacity/*4*/))==(0)){
  4580. (/*SFN*/C->_storage)=((T261)(calloc(2,sizeof(T0*))));
  4581. (/*SFN*/C->_capacity)=2;
  4582. (/*SFN*/C->_upper)=0;
  4583. }
  4584. else{
  4585. _new_capacity=(2)*((/*RF2*/(C)->_capacity/*4*/));
  4586. (/*SFN*/C->_storage)=r261realloc((/*RF2*/(C)->_storage/*0*/),(/*RF2*/(C)->_capacity/*4*/),_new_capacity);
  4587. (/*SFN*/C->_capacity)=_new_capacity;
  4588. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*8*/))+(1);
  4589. }
  4590. /*FI]*/
  4591. /*[IRF3.5put*/((/*RF2*/(C)->_storage/*0*/))[(/*RF2*/(C)->_upper/*8*/)]=(a1);
  4592. /*]*/
  4593. }
  4594.  
  4595.  
  4596. void r343with_capacity(T343* C,T2 a1){
  4597. /*[IF*/
  4598. if(((/*RF2*/(C)->_capacity/*4*/))<(a1)){
  4599. (/*SFN*/C->_storage)=((T261)(calloc(a1,sizeof(T0*))));
  4600. (/*SFN*/C->_capacity)=a1;
  4601. }
  4602. /*FI]*/
  4603. (/*SFN*/C->_upper)=-(1);
  4604. }
  4605.  
  4606.  
  4607. void r343make(T343* C,T2 a1){
  4608. /*[IF*/
  4609. if((a1)==(0)){
  4610. (/*SFN*/C->_upper)=-(1);
  4611. }
  4612.  else if(((/*RF2*/(C)->_capacity/*4*/))==(0)){
  4613. (/*SFN*/C->_storage)=((T261)(calloc(a1,sizeof(T0*))));
  4614. (/*SFN*/C->_capacity)=a1;
  4615. (/*SFN*/C->_upper)=(a1)-(1);
  4616. }
  4617.  else if(((/*RF2*/(C)->_capacity/*4*/))<(a1)){
  4618. (/*SFN*/C->_storage)=((T261)(calloc(a1,sizeof(T0*))));
  4619. (/*SFN*/C->_capacity)=a1;
  4620. (/*SFN*/C->_upper)=(a1)-(1);
  4621. }
  4622. else{
  4623. (/*SFN*/C->_upper)=(a1)-(1);
  4624. /*[IRF3.6clear_all*/{T343* C1=C;
  4625. T0* __value=NULL;
  4626. /*[IRF3.6set_all_with*/{T343* C2=C1;
  4627. T0* c1=__value;
  4628. r261set_all_with((/*RF2*/(C2)->_storage/*0*/),c1,(/*RF2*/(C2)->_upper/*8*/));
  4629. }/*]*/
  4630. }/*]*/
  4631. }
  4632. /*FI]*/
  4633. }
  4634.  
  4635.  
  4636. void r343resize(T343* C,T2 a1){
  4637. T0* _elt_default=NULL;
  4638. T2 _i=0;
  4639. T2 _new_capacity=0;
  4640. /*[IF*/
  4641. if((a1)<=(/*(IRF4.6count*/((/*RF2*/(C)->_upper/*8*/))+(1)/*)*/)){
  4642. (/*SFN*/C->_upper)=(a1)-(1);
  4643. }
  4644. else{
  4645. _new_capacity=a1;
  4646. /*[IF*/
  4647. if(((/*RF2*/(C)->_capacity/*4*/))<(_new_capacity)){
  4648. /*[IF*/
  4649. if(((/*RF2*/(C)->_capacity/*4*/))==(0)){
  4650. (/*SFN*/C->_storage)=((T261)(calloc(_new_capacity,sizeof(T0*))));
  4651. }
  4652. else{
  4653. (/*SFN*/C->_storage)=r261realloc((/*RF2*/(C)->_storage/*0*/),(/*RF2*/(C)->_capacity/*4*/),_new_capacity);
  4654. }
  4655. /*FI]*/
  4656. (/*SFN*/C->_capacity)=_new_capacity;
  4657. }
  4658. /*FI]*/
  4659. _new_capacity=(/*RF2*/(C)->_upper/*8*/);
  4660. (/*SFN*/C->_upper)=(a1)-(1);
  4661. _i=(/*RF2*/(C)->_upper/*8*/);
  4662. while (!((_i)==(_new_capacity)))
  4663. {
  4664. /*[IRF3.5put*/((/*RF2*/(C)->_storage/*0*/))[_i]=(_elt_default);
  4665. /*]*/
  4666. _i=(_i)-(1);
  4667. }
  4668. }
  4669. /*FI]*/
  4670. }
  4671.  
  4672.  
  4673. void r358make(T358* C,T2 a1){
  4674. /*[IF*/
  4675. if((a1)==(0)){
  4676. (/*SFN*/C->_upper)=-(1);
  4677. }
  4678.  else if(((/*RF2*/(C)->_capacity/*4*/))==(0)){
  4679. (/*SFN*/C->_storage)=((T359)(calloc(a1,sizeof(T0*))));
  4680. (/*SFN*/C->_capacity)=a1;
  4681. (/*SFN*/C->_upper)=(a1)-(1);
  4682. }
  4683.  else if(((/*RF2*/(C)->_capacity/*4*/))<(a1)){
  4684. (/*SFN*/C->_storage)=((T359)(calloc(a1,sizeof(T0*))));
  4685. (/*SFN*/C->_capacity)=a1;
  4686. (/*SFN*/C->_upper)=(a1)-(1);
  4687. }
  4688. else{
  4689. (/*SFN*/C->_upper)=(a1)-(1);
  4690. /*[IRF3.6clear_all*/{T358* C1=C;
  4691. T0* __value=NULL;
  4692. /*[IRF3.6set_all_with*/{T358* C2=C1;
  4693. T0* c1=__value;
  4694. r359set_all_with((/*RF2*/(C2)->_storage/*0*/),c1,(/*RF2*/(C2)->_upper/*8*/));
  4695. }/*]*/
  4696. }/*]*/
  4697. }
  4698. /*FI]*/
  4699. }
  4700.  
  4701.  
  4702. void r358resize(T358* C,T2 a1){
  4703. T0* _elt_default=NULL;
  4704. T2 _i=0;
  4705. T2 _new_capacity=0;
  4706. /*[IF*/
  4707. if((a1)<=(/*(IRF4.6count*/((/*RF2*/(C)->_upper/*8*/))+(1)/*)*/)){
  4708. (/*SFN*/C->_upper)=(a1)-(1);
  4709. }
  4710. else{
  4711. _new_capacity=a1;
  4712. /*[IF*/
  4713. if(((/*RF2*/(C)->_capacity/*4*/))<(_new_capacity)){
  4714. /*[IF*/
  4715. if(((/*RF2*/(C)->_capacity/*4*/))==(0)){
  4716. (/*SFN*/C->_storage)=((T359)(calloc(_new_capacity,sizeof(T0*))));
  4717. }
  4718. else{
  4719. (/*SFN*/C->_storage)=r359realloc((/*RF2*/(C)->_storage/*0*/),(/*RF2*/(C)->_capacity/*4*/),_new_capacity);
  4720. }
  4721. /*FI]*/
  4722. (/*SFN*/C->_capacity)=_new_capacity;
  4723. }
  4724. /*FI]*/
  4725. _new_capacity=(/*RF2*/(C)->_upper/*8*/);
  4726. (/*SFN*/C->_upper)=(a1)-(1);
  4727. _i=(/*RF2*/(C)->_upper/*8*/);
  4728. while (!((_i)==(_new_capacity)))
  4729. {
  4730. /*[IRF3.5put*/((/*RF2*/(C)->_storage/*0*/))[_i]=(_elt_default);
  4731. /*]*/
  4732. _i=(_i)-(1);
  4733. }
  4734. }
  4735. /*FI]*/
  4736. }
  4737.  
  4738.  
  4739. void r331with_capacity(T331* C,T2 a1){
  4740. /*[IF*/
  4741. if(((/*RF2*/(C)->_capacity/*4*/))<(a1)){
  4742. (/*SFN*/C->_storage)=((T332)(calloc(a1,sizeof(T0*))));
  4743. (/*SFN*/C->_capacity)=a1;
  4744. }
  4745. /*FI]*/
  4746. (/*SFN*/C->_upper)=-(1);
  4747. }
  4748.  
  4749.  
  4750. void r331add_last(T331* C,T0* a1){
  4751. T2 _new_capacity=0;
  4752. /*[IF*/
  4753. if((((/*RF2*/(C)->_upper/*8*/))+(1))<=(((/*RF2*/(C)->_capacity/*4*/))-(1))){
  4754. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*8*/))+(1);
  4755. }
  4756.  else if(((/*RF2*/(C)->_capacity/*4*/))==(0)){
  4757. (/*SFN*/C->_storage)=((T332)(calloc(2,sizeof(T0*))));
  4758. (/*SFN*/C->_capacity)=2;
  4759. (/*SFN*/C->_upper)=0;
  4760. }
  4761. else{
  4762. _new_capacity=(2)*((/*RF2*/(C)->_capacity/*4*/));
  4763. (/*SFN*/C->_storage)=r332realloc((/*RF2*/(C)->_storage/*0*/),(/*RF2*/(C)->_capacity/*4*/),_new_capacity);
  4764. (/*SFN*/C->_capacity)=_new_capacity;
  4765. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*8*/))+(1);
  4766. }
  4767. /*FI]*/
  4768. /*[IRF3.5put*/((/*RF2*/(C)->_storage/*0*/))[(/*RF2*/(C)->_upper/*8*/)]=(a1);
  4769. /*]*/
  4770. }
  4771.  
  4772.  
  4773. void r108with_capacity(T108* C,T2 a1,T2 a2){
  4774. /*[IF*/
  4775. if(((/*RF2*/(C)->_capacity/*8*/))<(a1)){
  4776. (/*SFN*/C->_storage)=((T110)(calloc(a1,sizeof(T0*))));
  4777. (/*SFN*/C->_capacity)=a1;
  4778. }
  4779. /*FI]*/
  4780. (/*SFN*/C->_lower)=a2;
  4781. (/*SFN*/C->_upper)=(a2)-(1);
  4782. }
  4783.  
  4784.  
  4785. void r108add_last(T108* C,T0* a1){
  4786. T2 _new_capacity=0;
  4787. /*[IF*/
  4788. if(((/*RF2*/(C)->_capacity/*8*/))<((r108count(C))+(1))){
  4789. /*[IF*/
  4790. if(((/*RF2*/(C)->_capacity/*8*/))==(0)){
  4791. (/*SFN*/C->_capacity)=16;
  4792. (/*SFN*/C->_storage)=((T110)(calloc((/*RF2*/(C)->_capacity/*8*/),sizeof(T0*))));
  4793. }
  4794. else{
  4795. _new_capacity=(2)*((/*RF2*/(C)->_capacity/*8*/));
  4796. (/*SFN*/C->_storage)=r110realloc((/*RF2*/(C)->_storage/*4*/),(/*RF2*/(C)->_capacity/*8*/),_new_capacity);
  4797. (/*SFN*/C->_capacity)=_new_capacity;
  4798. }
  4799. /*FI]*/
  4800. }
  4801. /*FI]*/
  4802. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*12*/))+(1);
  4803. /*[IRF3.6put*/{T108* C1=C;
  4804. T0* b1=a1;
  4805. T2 b2=(/*RF2*/(C)->_upper/*12*/);
  4806. ((/*RF2*/(C1)->_storage/*4*/))[(b2)-((/*RF2*/(C1)->_lower/*16*/))]=(b1);
  4807. }/*]*/
  4808. }
  4809.  
  4810.  
  4811. void r108copy(T108* C,T0* a1){
  4812. T2 _needed_capacity=0;
  4813. (/*SFN*/C->_lower)=/*SSWARF2*//*X108lower*/(/*RF2*/(((T108*)a1))->_lower/*16*/);
  4814. (/*SFN*/C->_upper)=/*SSWARF2*//*X108upper*/(/*RF2*/(((T108*)a1))->_upper/*12*/);
  4815. _needed_capacity=(((/*RF2*/(C)->_upper/*12*/))-((/*RF2*/(C)->_lower/*16*/)))+(1);
  4816. /*[IF*/
  4817. if(((/*RF2*/(C)->_capacity/*8*/))<(_needed_capacity)){
  4818. (/*SFN*/C->_capacity)=_needed_capacity;
  4819. (/*SFN*/C->_storage)=((T110)(calloc((/*RF2*/(C)->_capacity/*8*/),sizeof(T0*))));
  4820. }
  4821. /*FI]*/
  4822. /*[IF*/
  4823. if((_needed_capacity)>(0)){
  4824. r110copy_from((/*RF2*/(C)->_storage/*4*/),/*SSWARF2*//*X108storage*/((T110)((/*RF2*/(((T108*)a1))->_storage/*4*/))),(_needed_capacity)-(1));
  4825. }
  4826. /*FI]*/
  4827. }
  4828.  
  4829.  
  4830. T0* r108twin(T108* C){
  4831. T0* R=NULL;
  4832. R=malloc(sizeof(*C));
  4833. *((T108*)R)=M108;
  4834. r108copy(((T108*)R),((T0*)C));
  4835. return R;
  4836. }
  4837.  
  4838.  
  4839. T2 r108count(T108* C){
  4840. T2 R=0;
  4841. R=(((/*RF2*/(C)->_upper/*12*/))-((/*RF2*/(C)->_lower/*16*/)))+(1);
  4842. return R;
  4843. }
  4844.  
  4845.  
  4846. T0* r108item(T108* C,T2 a1){
  4847. T0* R=NULL;
  4848. R=((/*RF2*/(C)->_storage/*4*/))[(a1)-((/*RF2*/(C)->_lower/*16*/))];
  4849. return R;
  4850. }
  4851.  
  4852.  
  4853. void r335add_last(T335* C,T0* a1){
  4854. T2 _new_capacity=0;
  4855. /*[IF*/
  4856. if((((/*RF2*/(C)->_upper/*12*/))+(1))<=(((/*RF2*/(C)->_capacity/*8*/))-(1))){
  4857. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*12*/))+(1);
  4858. }
  4859.  else if(((/*RF2*/(C)->_capacity/*8*/))==(0)){
  4860. (/*SFN*/C->_storage)=((T336)(calloc(2,sizeof(T0*))));
  4861. (/*SFN*/C->_capacity)=2;
  4862. (/*SFN*/C->_upper)=0;
  4863. }
  4864. else{
  4865. _new_capacity=(2)*((/*RF2*/(C)->_capacity/*8*/));
  4866. (/*SFN*/C->_storage)=r336realloc((/*RF2*/(C)->_storage/*4*/),(/*RF2*/(C)->_capacity/*8*/),_new_capacity);
  4867. (/*SFN*/C->_capacity)=_new_capacity;
  4868. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*12*/))+(1);
  4869. }
  4870. /*FI]*/
  4871. /*[IRF3.5put*/((/*RF2*/(C)->_storage/*4*/))[(/*RF2*/(C)->_upper/*12*/)]=(a1);
  4872. /*]*/
  4873. }
  4874.  
  4875.  
  4876. void r335with_capacity(T335* C,T2 a1){
  4877. /*[IF*/
  4878. if(((/*RF2*/(C)->_capacity/*8*/))<(a1)){
  4879. (/*SFN*/C->_storage)=((T336)(calloc(a1,sizeof(T0*))));
  4880. (/*SFN*/C->_capacity)=a1;
  4881. }
  4882. /*FI]*/
  4883. (/*SFN*/C->_upper)=-(1);
  4884. }
  4885.  
  4886.  
  4887. void r335make(T335* C,T2 a1){
  4888. /*[IF*/
  4889. if((a1)==(0)){
  4890. (/*SFN*/C->_upper)=-(1);
  4891. }
  4892.  else if(((/*RF2*/(C)->_capacity/*8*/))==(0)){
  4893. (/*SFN*/C->_storage)=((T336)(calloc(a1,sizeof(T0*))));
  4894. (/*SFN*/C->_capacity)=a1;
  4895. (/*SFN*/C->_upper)=(a1)-(1);
  4896. }
  4897.  else if(((/*RF2*/(C)->_capacity/*8*/))<(a1)){
  4898. (/*SFN*/C->_storage)=((T336)(calloc(a1,sizeof(T0*))));
  4899. (/*SFN*/C->_capacity)=a1;
  4900. (/*SFN*/C->_upper)=(a1)-(1);
  4901. }
  4902. else{
  4903. (/*SFN*/C->_upper)=(a1)-(1);
  4904. /*[IRF3.6clear_all*/{T335* C1=C;
  4905. T0* __value=NULL;
  4906. /*[IRF3.6set_all_with*/{T335* C2=C1;
  4907. T0* c1=__value;
  4908. r336set_all_with((/*RF2*/(C2)->_storage/*4*/),c1,(/*RF2*/(C2)->_upper/*12*/));
  4909. }/*]*/
  4910. }/*]*/
  4911. }
  4912. /*FI]*/
  4913. }
  4914.  
  4915.  
  4916. T6 r335fast_has(T335* C,T0* a1){
  4917. T6 R=0;
  4918. R=r335valid_index(C,r335fast_index_of(C,a1));
  4919. return R;
  4920. }
  4921.  
  4922.  
  4923. void r335copy(T335* C,T0* a1){
  4924. T2 _new_capacity=0;
  4925. T2 _other_upper=0;
  4926. _other_upper=(/*RF2*/(((T335*)a1))->_upper/*12*/);
  4927. /*[IF*/
  4928. if((_other_upper)>=(0)){
  4929. _new_capacity=(_other_upper)+(1);
  4930. /*[IF*/
  4931. if(((/*RF2*/(C)->_capacity/*8*/))<(_new_capacity)){
  4932. (/*SFN*/C->_capacity)=_new_capacity;
  4933. (/*SFN*/C->_storage)=((T336)(calloc(_new_capacity,sizeof(T0*))));
  4934. }
  4935.  else if(((/*RF2*/(C)->_capacity/*8*/))>(0)){
  4936. r336clear_all((/*RF2*/(C)->_storage/*4*/),((/*RF2*/(C)->_capacity/*8*/))-(1));
  4937. }
  4938. /*FI]*/
  4939. r336copy_from((/*RF2*/(C)->_storage/*4*/),(/*RF2*/(((T335*)a1))->_storage/*4*/),_other_upper);
  4940. }
  4941.  else if(((/*RF2*/(C)->_capacity/*8*/))>(0)){
  4942. r336clear_all((/*RF2*/(C)->_storage/*4*/),((/*RF2*/(C)->_capacity/*8*/))-(1));
  4943. }
  4944. /*FI]*/
  4945. (/*SFN*/C->_upper)=_other_upper;
  4946. }
  4947.  
  4948.  
  4949. T2 r335fast_index_of(T335* C,T0* a1){
  4950. T2 R=0;
  4951. R=r336fast_index_of((/*RF2*/(C)->_storage/*4*/),a1,(/*RF2*/(C)->_upper/*12*/));
  4952. return R;
  4953. }
  4954.  
  4955.  
  4956. void r335resize(T335* C,T2 a1){
  4957. T0* _elt_default=NULL;
  4958. T2 _i=0;
  4959. T2 _new_capacity=0;
  4960. /*[IF*/
  4961. if((a1)<=(/*(IRF4.6count*/((/*RF2*/(C)->_upper/*12*/))+(1)/*)*/)){
  4962. (/*SFN*/C->_upper)=(a1)-(1);
  4963. }
  4964. else{
  4965. _new_capacity=a1;
  4966. /*[IF*/
  4967. if(((/*RF2*/(C)->_capacity/*8*/))<(_new_capacity)){
  4968. /*[IF*/
  4969. if(((/*RF2*/(C)->_capacity/*8*/))==(0)){
  4970. (/*SFN*/C->_storage)=((T336)(calloc(_new_capacity,sizeof(T0*))));
  4971. }
  4972. else{
  4973. (/*SFN*/C->_storage)=r336realloc((/*RF2*/(C)->_storage/*4*/),(/*RF2*/(C)->_capacity/*8*/),_new_capacity);
  4974. }
  4975. /*FI]*/
  4976. (/*SFN*/C->_capacity)=_new_capacity;
  4977. }
  4978. /*FI]*/
  4979. _new_capacity=(/*RF2*/(C)->_upper/*12*/);
  4980. (/*SFN*/C->_upper)=(a1)-(1);
  4981. _i=(/*RF2*/(C)->_upper/*12*/);
  4982. while (!((_i)==(_new_capacity)))
  4983. {
  4984. /*[IRF3.5put*/((/*RF2*/(C)->_storage/*4*/))[_i]=(_elt_default);
  4985. /*]*/
  4986. _i=(_i)-(1);
  4987. }
  4988. }
  4989. /*FI]*/
  4990. }
  4991.  
  4992.  
  4993. T0* r335twin(T335* C){
  4994. T0* R=NULL;
  4995. R=malloc(sizeof(*C));
  4996. *((T335*)R)=M335;
  4997. r335copy(((T335*)R),((T0*)C));
  4998. return R;
  4999. }
  5000.  
  5001.  
  5002. T6 r335valid_index(T335* C,T2 a1){
  5003. T6 R=0;
  5004. R=((0)<=(a1))&&((a1)<=((/*RF2*/(C)->_upper/*12*/)));
  5005. return R;
  5006. }
  5007.  
  5008.  
  5009. void r201with_capacity(T201* C,T2 a1){
  5010. /*[IF*/
  5011. if(((/*RF2*/(C)->_capacity/*8*/))<(a1)){
  5012. (/*SFN*/C->_storage)=((T202)(calloc(a1,sizeof(T0*))));
  5013. (/*SFN*/C->_capacity)=a1;
  5014. }
  5015. /*FI]*/
  5016. (/*SFN*/C->_upper)=-(1);
  5017. }
  5018.  
  5019.  
  5020. void r201add_last(T201* C,T0* a1){
  5021. T2 _new_capacity=0;
  5022. /*[IF*/
  5023. if((((/*RF2*/(C)->_upper/*12*/))+(1))<=(((/*RF2*/(C)->_capacity/*8*/))-(1))){
  5024. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*12*/))+(1);
  5025. }
  5026.  else if(((/*RF2*/(C)->_capacity/*8*/))==(0)){
  5027. (/*SFN*/C->_storage)=((T202)(calloc(2,sizeof(T0*))));
  5028. (/*SFN*/C->_capacity)=2;
  5029. (/*SFN*/C->_upper)=0;
  5030. }
  5031. else{
  5032. _new_capacity=(2)*((/*RF2*/(C)->_capacity/*8*/));
  5033. (/*SFN*/C->_storage)=r202realloc((/*RF2*/(C)->_storage/*4*/),(/*RF2*/(C)->_capacity/*8*/),_new_capacity);
  5034. (/*SFN*/C->_capacity)=_new_capacity;
  5035. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*12*/))+(1);
  5036. }
  5037. /*FI]*/
  5038. /*[IRF3.5put*/((/*RF2*/(C)->_storage/*4*/))[(/*RF2*/(C)->_upper/*12*/)]=(a1);
  5039. /*]*/
  5040. }
  5041.  
  5042.  
  5043. void r201make(T201* C,T2 a1){
  5044. /*[IF*/
  5045. if((a1)==(0)){
  5046. (/*SFN*/C->_upper)=-(1);
  5047. }
  5048.  else if(((/*RF2*/(C)->_capacity/*8*/))==(0)){
  5049. (/*SFN*/C->_storage)=((T202)(calloc(a1,sizeof(T0*))));
  5050. (/*SFN*/C->_capacity)=a1;
  5051. (/*SFN*/C->_upper)=(a1)-(1);
  5052. }
  5053.  else if(((/*RF2*/(C)->_capacity/*8*/))<(a1)){
  5054. (/*SFN*/C->_storage)=((T202)(calloc(a1,sizeof(T0*))));
  5055. (/*SFN*/C->_capacity)=a1;
  5056. (/*SFN*/C->_upper)=(a1)-(1);
  5057. }
  5058. else{
  5059. (/*SFN*/C->_upper)=(a1)-(1);
  5060. /*[IRF3.6clear_all*/{T201* C1=C;
  5061. T0* __value=NULL;
  5062. /*[IRF3.6set_all_with*/{T201* C2=C1;
  5063. T0* c1=__value;
  5064. r202set_all_with((/*RF2*/(C2)->_storage/*4*/),c1,(/*RF2*/(C2)->_upper/*12*/));
  5065. }/*]*/
  5066. }/*]*/
  5067. }
  5068. /*FI]*/
  5069. }
  5070.  
  5071.  
  5072. void r201copy(T201* C,T0* a1){
  5073. T2 _new_capacity=0;
  5074. T2 _other_upper=0;
  5075. _other_upper=(/*RF2*/(((T201*)a1))->_upper/*12*/);
  5076. /*[IF*/
  5077. if((_other_upper)>=(0)){
  5078. _new_capacity=(_other_upper)+(1);
  5079. /*[IF*/
  5080. if(((/*RF2*/(C)->_capacity/*8*/))<(_new_capacity)){
  5081. (/*SFN*/C->_capacity)=_new_capacity;
  5082. (/*SFN*/C->_storage)=((T202)(calloc(_new_capacity,sizeof(T0*))));
  5083. }
  5084.  else if(((/*RF2*/(C)->_capacity/*8*/))>(0)){
  5085. r202clear_all((/*RF2*/(C)->_storage/*4*/),((/*RF2*/(C)->_capacity/*8*/))-(1));
  5086. }
  5087. /*FI]*/
  5088. r202copy_from((/*RF2*/(C)->_storage/*4*/),(/*RF2*/(((T201*)a1))->_storage/*4*/),_other_upper);
  5089. }
  5090.  else if(((/*RF2*/(C)->_capacity/*8*/))>(0)){
  5091. r202clear_all((/*RF2*/(C)->_storage/*4*/),((/*RF2*/(C)->_capacity/*8*/))-(1));
  5092. }
  5093. /*FI]*/
  5094. (/*SFN*/C->_upper)=_other_upper;
  5095. }
  5096.  
  5097.  
  5098. void r201resize(T201* C,T2 a1){
  5099. T0* _elt_default=NULL;
  5100. T2 _i=0;
  5101. T2 _new_capacity=0;
  5102. /*[IF*/
  5103. if((a1)<=(/*(IRF4.6count*/((/*RF2*/(C)->_upper/*12*/))+(1)/*)*/)){
  5104. (/*SFN*/C->_upper)=(a1)-(1);
  5105. }
  5106. else{
  5107. _new_capacity=a1;
  5108. /*[IF*/
  5109. if(((/*RF2*/(C)->_capacity/*8*/))<(_new_capacity)){
  5110. /*[IF*/
  5111. if(((/*RF2*/(C)->_capacity/*8*/))==(0)){
  5112. (/*SFN*/C->_storage)=((T202)(calloc(_new_capacity,sizeof(T0*))));
  5113. }
  5114. else{
  5115. (/*SFN*/C->_storage)=r202realloc((/*RF2*/(C)->_storage/*4*/),(/*RF2*/(C)->_capacity/*8*/),_new_capacity);
  5116. }
  5117. /*FI]*/
  5118. (/*SFN*/C->_capacity)=_new_capacity;
  5119. }
  5120. /*FI]*/
  5121. _new_capacity=(/*RF2*/(C)->_upper/*12*/);
  5122. (/*SFN*/C->_upper)=(a1)-(1);
  5123. _i=(/*RF2*/(C)->_upper/*12*/);
  5124. while (!((_i)==(_new_capacity)))
  5125. {
  5126. /*[IRF3.5put*/((/*RF2*/(C)->_storage/*4*/))[_i]=(_elt_default);
  5127. /*]*/
  5128. _i=(_i)-(1);
  5129. }
  5130. }
  5131. /*FI]*/
  5132. }
  5133.  
  5134.  
  5135. T0* r201twin(T201* C){
  5136. T0* R=NULL;
  5137. R=malloc(sizeof(*C));
  5138. *((T201*)R)=M201;
  5139. r201copy(((T201*)R),((T0*)C));
  5140. return R;
  5141. }
  5142.  
  5143.  
  5144. void r258with_capacity(T258* C,T2 a1,T2 a2){
  5145. /*[IF*/
  5146. if(((/*RF2*/(C)->_capacity/*4*/))<(a1)){
  5147. (/*SFN*/C->_storage)=((T261)(calloc(a1,sizeof(T0*))));
  5148. (/*SFN*/C->_capacity)=a1;
  5149. }
  5150. /*FI]*/
  5151. (/*SFN*/C->_lower)=a2;
  5152. (/*SFN*/C->_upper)=(a2)-(1);
  5153. }
  5154.  
  5155.  
  5156. void r258add_last(T258* C,T0* a1){
  5157. T2 _new_capacity=0;
  5158. /*[IF*/
  5159. if(((/*RF2*/(C)->_capacity/*4*/))<((r258count(C))+(1))){
  5160. /*[IF*/
  5161. if(((/*RF2*/(C)->_capacity/*4*/))==(0)){
  5162. (/*SFN*/C->_capacity)=16;
  5163. (/*SFN*/C->_storage)=((T261)(calloc((/*RF2*/(C)->_capacity/*4*/),sizeof(T0*))));
  5164. }
  5165. else{
  5166. _new_capacity=(2)*((/*RF2*/(C)->_capacity/*4*/));
  5167. (/*SFN*/C->_storage)=r261realloc((/*RF2*/(C)->_storage/*0*/),(/*RF2*/(C)->_capacity/*4*/),_new_capacity);
  5168. (/*SFN*/C->_capacity)=_new_capacity;
  5169. }
  5170. /*FI]*/
  5171. }
  5172. /*FI]*/
  5173. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*8*/))+(1);
  5174. /*[IRF3.6put*/{T258* C1=C;
  5175. T0* b1=a1;
  5176. T2 b2=(/*RF2*/(C)->_upper/*8*/);
  5177. ((/*RF2*/(C1)->_storage/*0*/))[(b2)-((/*RF2*/(C1)->_lower/*12*/))]=(b1);
  5178. }/*]*/
  5179. }
  5180.  
  5181.  
  5182. void r258make(T258* C,T2 a1,T2 a2){
  5183. T2 _needed=0;
  5184. (/*SFN*/C->_lower)=a1;
  5185. (/*SFN*/C->_upper)=a2;
  5186. _needed=((a2)-(a1))+(1);
  5187. /*[IF*/
  5188. if((_needed)>(0)){
  5189. /*[IF*/
  5190. if(((/*RF2*/(C)->_capacity/*4*/))<(_needed)){
  5191. (/*SFN*/C->_storage)=((T261)(calloc(_needed,sizeof(T0*))));
  5192. (/*SFN*/C->_capacity)=_needed;
  5193. }
  5194. else{
  5195. /*[IRF3.6clear_all*/{T258* C1=C;
  5196. T0* __value=NULL;
  5197. /*[IRF3.6set_all_with*/{T258* C2=C1;
  5198. T0* c1=__value;
  5199. r261set_all_with((/*RF2*/(C2)->_storage/*0*/),c1,((/*RF2*/(C2)->_upper/*8*/))-((/*RF2*/(C2)->_lower/*12*/)));
  5200. }/*]*/
  5201. }/*]*/
  5202. }
  5203. /*FI]*/
  5204. }
  5205. /*FI]*/
  5206. }
  5207.  
  5208.  
  5209. void r258copy(T258* C,T0* a1){
  5210. T2 _needed_capacity=0;
  5211. (/*SFN*/C->_lower)=(/*RF2*/(((T258*)a1))->_lower/*12*/);
  5212. (/*SFN*/C->_upper)=(/*RF2*/(((T258*)a1))->_upper/*8*/);
  5213. _needed_capacity=(((/*RF2*/(C)->_upper/*8*/))-((/*RF2*/(C)->_lower/*12*/)))+(1);
  5214. /*[IF*/
  5215. if(((/*RF2*/(C)->_capacity/*4*/))<(_needed_capacity)){
  5216. (/*SFN*/C->_capacity)=_needed_capacity;
  5217. (/*SFN*/C->_storage)=((T261)(calloc((/*RF2*/(C)->_capacity/*4*/),sizeof(T0*))));
  5218. }
  5219. /*FI]*/
  5220. /*[IF*/
  5221. if((_needed_capacity)>(0)){
  5222. r261copy_from((/*RF2*/(C)->_storage/*0*/),(/*RF2*/(((T258*)a1))->_storage/*0*/),(_needed_capacity)-(1));
  5223. }
  5224. /*FI]*/
  5225. }
  5226.  
  5227.  
  5228. T0* r258twin(T258* C){
  5229. T0* R=NULL;
  5230. R=malloc(sizeof(*C));
  5231. *((T258*)R)=M258;
  5232. r258copy(((T258*)R),((T0*)C));
  5233. return R;
  5234. }
  5235.  
  5236.  
  5237. T2 r258count(T258* C){
  5238. T2 R=0;
  5239. R=(((/*RF2*/(C)->_upper/*8*/))-((/*RF2*/(C)->_lower/*12*/)))+(1);
  5240. return R;
  5241. }
  5242.  
  5243.  
  5244. T0* r258item(T258* C,T2 a1){
  5245. T0* R=NULL;
  5246. R=((/*RF2*/(C)->_storage/*0*/))[(a1)-((/*RF2*/(C)->_lower/*12*/))];
  5247. return R;
  5248. }
  5249.  
  5250.  
  5251. void r207add_last(T207* C,T0* a1){
  5252. T2 _new_capacity=0;
  5253. /*[IF*/
  5254. if((((/*RF2*/(C)->_upper/*12*/))+(1))<=(((/*RF2*/(C)->_capacity/*8*/))-(1))){
  5255. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*12*/))+(1);
  5256. }
  5257.  else if(((/*RF2*/(C)->_capacity/*8*/))==(0)){
  5258. (/*SFN*/C->_storage)=((T208)(calloc(2,sizeof(T0*))));
  5259. (/*SFN*/C->_capacity)=2;
  5260. (/*SFN*/C->_upper)=0;
  5261. }
  5262. else{
  5263. _new_capacity=(2)*((/*RF2*/(C)->_capacity/*8*/));
  5264. (/*SFN*/C->_storage)=r208realloc((/*RF2*/(C)->_storage/*4*/),(/*RF2*/(C)->_capacity/*8*/),_new_capacity);
  5265. (/*SFN*/C->_capacity)=_new_capacity;
  5266. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*12*/))+(1);
  5267. }
  5268. /*FI]*/
  5269. /*[IRF3.5put*/((/*RF2*/(C)->_storage/*4*/))[(/*RF2*/(C)->_upper/*12*/)]=(a1);
  5270. /*]*/
  5271. }
  5272.  
  5273.  
  5274. void r207with_capacity(T207* C,T2 a1){
  5275. /*[IF*/
  5276. if(((/*RF2*/(C)->_capacity/*8*/))<(a1)){
  5277. (/*SFN*/C->_storage)=((T208)(calloc(a1,sizeof(T0*))));
  5278. (/*SFN*/C->_capacity)=a1;
  5279. }
  5280. /*FI]*/
  5281. (/*SFN*/C->_upper)=-(1);
  5282. }
  5283.  
  5284.  
  5285. void r207make(T207* C,T2 a1){
  5286. /*[IF*/
  5287. if((a1)==(0)){
  5288. (/*SFN*/C->_upper)=-(1);
  5289. }
  5290.  else if(((/*RF2*/(C)->_capacity/*8*/))==(0)){
  5291. (/*SFN*/C->_storage)=((T208)(calloc(a1,sizeof(T0*))));
  5292. (/*SFN*/C->_capacity)=a1;
  5293. (/*SFN*/C->_upper)=(a1)-(1);
  5294. }
  5295.  else if(((/*RF2*/(C)->_capacity/*8*/))<(a1)){
  5296. (/*SFN*/C->_storage)=((T208)(calloc(a1,sizeof(T0*))));
  5297. (/*SFN*/C->_capacity)=a1;
  5298. (/*SFN*/C->_upper)=(a1)-(1);
  5299. }
  5300. else{
  5301. (/*SFN*/C->_upper)=(a1)-(1);
  5302. /*[IRF3.6clear_all*/{T207* C1=C;
  5303. T0* __value=NULL;
  5304. /*[IRF3.6set_all_with*/{T207* C2=C1;
  5305. T0* c1=__value;
  5306. r208set_all_with((/*RF2*/(C2)->_storage/*4*/),c1,(/*RF2*/(C2)->_upper/*12*/));
  5307. }/*]*/
  5308. }/*]*/
  5309. }
  5310. /*FI]*/
  5311. }
  5312.  
  5313.  
  5314. void r207copy(T207* C,T0* a1){
  5315. T2 _new_capacity=0;
  5316. T2 _other_upper=0;
  5317. _other_upper=(/*RF2*/(((T207*)a1))->_upper/*12*/);
  5318. /*[IF*/
  5319. if((_other_upper)>=(0)){
  5320. _new_capacity=(_other_upper)+(1);
  5321. /*[IF*/
  5322. if(((/*RF2*/(C)->_capacity/*8*/))<(_new_capacity)){
  5323. (/*SFN*/C->_capacity)=_new_capacity;
  5324. (/*SFN*/C->_storage)=((T208)(calloc(_new_capacity,sizeof(T0*))));
  5325. }
  5326.  else if(((/*RF2*/(C)->_capacity/*8*/))>(0)){
  5327. r208clear_all((/*RF2*/(C)->_storage/*4*/),((/*RF2*/(C)->_capacity/*8*/))-(1));
  5328. }
  5329. /*FI]*/
  5330. r208copy_from((/*RF2*/(C)->_storage/*4*/),(/*RF2*/(((T207*)a1))->_storage/*4*/),_other_upper);
  5331. }
  5332.  else if(((/*RF2*/(C)->_capacity/*8*/))>(0)){
  5333. r208clear_all((/*RF2*/(C)->_storage/*4*/),((/*RF2*/(C)->_capacity/*8*/))-(1));
  5334. }
  5335. /*FI]*/
  5336. (/*SFN*/C->_upper)=_other_upper;
  5337. }
  5338.  
  5339.  
  5340. void r207resize(T207* C,T2 a1){
  5341. T0* _elt_default=NULL;
  5342. T2 _i=0;
  5343. T2 _new_capacity=0;
  5344. /*[IF*/
  5345. if((a1)<=(/*(IRF4.6count*/((/*RF2*/(C)->_upper/*12*/))+(1)/*)*/)){
  5346. (/*SFN*/C->_upper)=(a1)-(1);
  5347. }
  5348. else{
  5349. _new_capacity=a1;
  5350. /*[IF*/
  5351. if(((/*RF2*/(C)->_capacity/*8*/))<(_new_capacity)){
  5352. /*[IF*/
  5353. if(((/*RF2*/(C)->_capacity/*8*/))==(0)){
  5354. (/*SFN*/C->_storage)=((T208)(calloc(_new_capacity,sizeof(T0*))));
  5355. }
  5356. else{
  5357. (/*SFN*/C->_storage)=r208realloc((/*RF2*/(C)->_storage/*4*/),(/*RF2*/(C)->_capacity/*8*/),_new_capacity);
  5358. }
  5359. /*FI]*/
  5360. (/*SFN*/C->_capacity)=_new_capacity;
  5361. }
  5362. /*FI]*/
  5363. _new_capacity=(/*RF2*/(C)->_upper/*12*/);
  5364. (/*SFN*/C->_upper)=(a1)-(1);
  5365. _i=(/*RF2*/(C)->_upper/*12*/);
  5366. while (!((_i)==(_new_capacity)))
  5367. {
  5368. /*[IRF3.5put*/((/*RF2*/(C)->_storage/*4*/))[_i]=(_elt_default);
  5369. /*]*/
  5370. _i=(_i)-(1);
  5371. }
  5372. }
  5373. /*FI]*/
  5374. }
  5375.  
  5376.  
  5377. T0* r207twin(T207* C){
  5378. T0* R=NULL;
  5379. R=malloc(sizeof(*C));
  5380. *((T207*)R)=M207;
  5381. r207copy(((T207*)R),((T0*)C));
  5382. return R;
  5383. }
  5384.  
  5385.  
  5386. void r354make(T354* C,T2 a1){
  5387. /*[IF*/
  5388. if((a1)==(0)){
  5389. (/*SFN*/C->_upper)=-(1);
  5390. }
  5391.  else if(((/*RF2*/(C)->_capacity/*4*/))==(0)){
  5392. (/*SFN*/C->_storage)=((T355)(calloc(a1,sizeof(T0*))));
  5393. (/*SFN*/C->_capacity)=a1;
  5394. (/*SFN*/C->_upper)=(a1)-(1);
  5395. }
  5396.  else if(((/*RF2*/(C)->_capacity/*4*/))<(a1)){
  5397. (/*SFN*/C->_storage)=((T355)(calloc(a1,sizeof(T0*))));
  5398. (/*SFN*/C->_capacity)=a1;
  5399. (/*SFN*/C->_upper)=(a1)-(1);
  5400. }
  5401. else{
  5402. (/*SFN*/C->_upper)=(a1)-(1);
  5403. /*[IRF3.6clear_all*/{T354* C1=C;
  5404. T0* __value=NULL;
  5405. /*[IRF3.6set_all_with*/{T354* C2=C1;
  5406. T0* c1=__value;
  5407. r355set_all_with((/*RF2*/(C2)->_storage/*0*/),c1,(/*RF2*/(C2)->_upper/*8*/));
  5408. }/*]*/
  5409. }/*]*/
  5410. }
  5411. /*FI]*/
  5412. }
  5413.  
  5414.  
  5415. void r354resize(T354* C,T2 a1){
  5416. T0* _elt_default=NULL;
  5417. T2 _i=0;
  5418. T2 _new_capacity=0;
  5419. /*[IF*/
  5420. if((a1)<=(/*(IRF4.6count*/((/*RF2*/(C)->_upper/*8*/))+(1)/*)*/)){
  5421. (/*SFN*/C->_upper)=(a1)-(1);
  5422. }
  5423. else{
  5424. _new_capacity=a1;
  5425. /*[IF*/
  5426. if(((/*RF2*/(C)->_capacity/*4*/))<(_new_capacity)){
  5427. /*[IF*/
  5428. if(((/*RF2*/(C)->_capacity/*4*/))==(0)){
  5429. (/*SFN*/C->_storage)=((T355)(calloc(_new_capacity,sizeof(T0*))));
  5430. }
  5431. else{
  5432. (/*SFN*/C->_storage)=r355realloc((/*RF2*/(C)->_storage/*0*/),(/*RF2*/(C)->_capacity/*4*/),_new_capacity);
  5433. }
  5434. /*FI]*/
  5435. (/*SFN*/C->_capacity)=_new_capacity;
  5436. }
  5437. /*FI]*/
  5438. _new_capacity=(/*RF2*/(C)->_upper/*8*/);
  5439. (/*SFN*/C->_upper)=(a1)-(1);
  5440. _i=(/*RF2*/(C)->_upper/*8*/);
  5441. while (!((_i)==(_new_capacity)))
  5442. {
  5443. /*[IRF3.5put*/((/*RF2*/(C)->_storage/*0*/))[_i]=(_elt_default);
  5444. /*]*/
  5445. _i=(_i)-(1);
  5446. }
  5447. }
  5448. /*FI]*/
  5449. }
  5450.  
  5451.  
  5452. void r360add_last(T360* C,T0* a1){
  5453. T2 _new_capacity=0;
  5454. /*[IF*/
  5455. if((((/*RF2*/(C)->_upper/*8*/))+(1))<=(((/*RF2*/(C)->_capacity/*4*/))-(1))){
  5456. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*8*/))+(1);
  5457. }
  5458.  else if(((/*RF2*/(C)->_capacity/*4*/))==(0)){
  5459. (/*SFN*/C->_storage)=((T60)(calloc(2,sizeof(T0*))));
  5460. (/*SFN*/C->_capacity)=2;
  5461. (/*SFN*/C->_upper)=0;
  5462. }
  5463. else{
  5464. _new_capacity=(2)*((/*RF2*/(C)->_capacity/*4*/));
  5465. (/*SFN*/C->_storage)=r60realloc((/*RF2*/(C)->_storage/*0*/),(/*RF2*/(C)->_capacity/*4*/),_new_capacity);
  5466. (/*SFN*/C->_capacity)=_new_capacity;
  5467. (/*SFN*/C->_upper)=((/*RF2*/(C)->_upper/*8*/))+(1);
  5468. }
  5469. /*FI]*/
  5470. /*[IRF3.5put*/((/*RF2*/(C)->_storage/*0*/))[(/*RF2*/(C)->_upper/*8*/)]=(a1);
  5471. /*]*/
  5472. }
  5473.  
  5474.  
  5475. void r360with_capacity(T360* C,T2 a1){
  5476. /*[IF*/
  5477. if(((/*RF2*/(C)->_capacity/*4*/))<(a1)){
  5478. (/*SFN*/C->_storage)=((T60)(calloc(a1,sizeof(T0*))));
  5479. (/*SFN*/C->_capacity)=a1;
  5480. }
  5481. /*FI]*/
  5482. (/*SFN*/C->_upper)=-(1);
  5483. }
  5484.  
  5485.